diff --git a/.gitmodules b/.gitmodules index e69de29b..d0eabcc1 100644 --- a/.gitmodules +++ b/.gitmodules @@ -0,0 +1,6 @@ +[submodule "cross-dom-comm/foundry/lib/forge-std"] + path = cross-dom-comm/foundry/lib/forge-std + url = https://github.com/foundry-rs/forge-std +[submodule "getting-started/foundry/lib/forge-std"] + path = getting-started/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 dbe04e0d..6699a702 100644 --- a/cross-dom-comm/README.md +++ b/cross-dom-comm/README.md @@ -10,31 +10,36 @@ 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). +1. 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. 1. 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 +47,57 @@ This setup assumes you already have [Node.js](https://nodejs.org/en/) and [yarn] yarn ``` -### Ethereum message to Optimism +#### Ethereum message to Optimism -1. [Browse to the Greeter contract on Etherscan](https://kovan-optimistic.etherscan.io/address/0xD4c204223d6F1Dfad0b7a0b05BB0bCaB6665e0c9#readContract) and click **greet** to see the greeting. +1. [Browse to the Greeter contract on BlockScout](https://blockscout.com/optimism/goerli/address/0xC0836cCc8FBa87637e782Dde6e6572aD624fb984/read-contract#address-tabs) to see the result of **greet**. 1. Connect the Hardhat console to Kovan (L1): ```sh - yarn hardhat console --network kovan + yarn hardhat console --network goerli ``` -1. Deploy and call the `ControlL2Greeter` contract. +1. Deploy and call the `FromL2_ControlL2Greeter` contract. ```js - Controller = await ethers.getContractFactory("ControlL2Greeter") + Controller = await ethers.getContractFactory("FromL2_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 `FromL2_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. [Browse to the Greeter contract on Etherscan](https://blockscout.com/optimism/goerli/address/0xC0836cCc8FBa87637e782Dde6e6572aD624fb984/read-contract#address-tabs) to see the new greeting. -### Optimism message to Ethereum +#### Optimism message to Ethereum -#### Send the message +##### Send the message -1. [Browse to the Greeter contract on Etherscan](https://kovan.etherscan.io/address/0x11fB328D5Bd8E27917535b6d40b881d35BC39Be0#readContract) and click **greet** to see the greeting. +1. [Browse to the Greeter contract on Etherscan](https://goerli.etherscan.io/address/0x7fA4D972bB15B71358da2D937E4A830A9084cf2e#readContract) and click **greet** to see the greeting. -1. Connect the Hardhat console to Optimistic Kovan (L2): +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,7 +109,7 @@ 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. @@ -112,10 +117,10 @@ This is a complex process that requires a [Merkle proof](https://medium.com/cryp 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 +133,9 @@ 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, l1SignerOrProvider: l1Signer, - l2SignerOrProvider: new ethers.providers.JsonRpcProvider("https://kovan.optimism.io") + l2SignerOrProvider: new ethers.providers.JsonRpcProvider("https://goerli.optimism.io") }) ``` @@ -148,13 +153,76 @@ You can do it using [the Optimism SDK](https://www.npmjs.com/package/@eth-optimi (await crossChainMessenger.finalizeMessage(hash)) ``` -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. +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/contracts` library (assuming you already have Noe.js and yarn): + + ```sh + cd foundry/lib + yarn + ``` + +1. Create environment variables for the URLs for Goerli and Optimistic Goerli: + + ```sh + cd .. + GOERLI_URL= ... + OPTI_GOERLI_URL= ... + ``` + +1. Create environment variables for the Greeter contract's addresses + + ```sh + GREETER_L1=0x7fA4D972bB15B71358da2D937E4A830A9084cf2e + GREETER_L2=0xC0836cCc8FBa87637e782Dde6e6572aD624fb984 + ``` + +1. Put your account mnemonic in the file `mnem.delme`. + +#### Control the L2 Greeter from L1 + +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 + CONTROLLER= << address >> + ``` + +1. Send a transaction to change the L2 greeting: + + ```sh + cast send --rpc-url $GOERLI_URL --gas-limit 150000 \ + --mnemonic-path mnem.delme \ + $CONTROLLER "setGreeting(string)" '"Salam"' + ``` + +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 + ``` ## 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 +237,19 @@ This line imports the interface to send messages, [`ICrossDomainMessenger.sol`]( ```solidity -contract ControlL2Greeter { +contract FromL1_ControlL2Greeter { address crossDomainMessengerAddr = 0x4361d0F75A0186C05f971c566dC6bEa5957483fD; ``` -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 Kovan. 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 +293,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 +308,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 +320,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..6f3b43ca --- /dev/null +++ b/cross-dom-comm/foundry/lib/forge-std @@ -0,0 +1 @@ +Subproject commit 6f3b43cad7476a5aa7be5c5f27388f0ce40b0424 diff --git a/cross-dom-comm/foundry/lib/package.json b/cross-dom-comm/foundry/lib/package.json new file mode 100644 index 00000000..77558cf9 --- /dev/null +++ b/cross-dom-comm/foundry/lib/package.json @@ -0,0 +1,5 @@ +{ + "dependencies": { + "@eth-optimism/contracts": "^0.5.29" + } +} diff --git a/cross-dom-comm/foundry/lib/yarn.lock b/cross-dom-comm/foundry/lib/yarn.lock new file mode 100644 index 00000000..185d84ef --- /dev/null +++ b/cross-dom-comm/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.29": + version "0.5.29" + resolved "https://registry.yarnpkg.com/@eth-optimism/contracts/-/contracts-0.5.29.tgz#e795ccd94cdbd3ac34d726456529ac892fd3dc77" + integrity sha512-uYUfxqPjEl1VABD5EUNA+NI5ZRmfQVEuIvAV1uUPvNP0w+GdsEeYrYIPhR6e+EhsUV2Ko4EKVAPYTYoJmI9GkQ== + dependencies: + "@eth-optimism/core-utils" "0.9.0" + "@ethersproject/abstract-provider" "^5.6.1" + "@ethersproject/abstract-signer" "^5.6.2" + +"@eth-optimism/core-utils@0.9.0": + version "0.9.0" + resolved "https://registry.yarnpkg.com/@eth-optimism/core-utils/-/core-utils-0.9.0.tgz#2af57348148a5d262f252940c7b599480cede744" + integrity sha512-sCX30T005zEUI8ktyaWLXDAIaUP7aBobZQpyBJoxbbg5fOVtlwuuApxQWACPMLYK56qkYUOe6X3yII+37p92RQ== + 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/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/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..03ff3f71 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', + "optimistic-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 100% rename from cross-dom-comm/package.json rename to cross-dom-comm/hardhat/package.json 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 100% rename from cross-dom-comm/yarn.lock rename to cross-dom-comm/hardhat/yarn.lock diff --git a/getting-started/README.md b/getting-started/README.md index 1269e09a..5166d735 100644 --- a/getting-started/README.md +++ b/getting-started/README.md @@ -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 + # 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` and `@truffle/hdwallet-provider` to your project: ```sh - yarn add @truffle/hdwallet-provider + yarn add dotenv @truffle/hdwallet-provider ``` -1. Edit the `truffle-config.js` file + +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 + require('dotenv').config() + ``` + + 1. Add a network definition in `module.exports.networks`: - ```js - "optimistic-kovan": { - provider: () => new HDWalletProvider(, ) + ```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. Put your mnemonic in a file `mnem.delme` and send a transaction. + + ```sh + cast send --mnemonic-path mnem.delme $GREETER "setGreeting(string)" '"hello"' --legacy ``` -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. Test that the greeting has changed: ```sh - export ETH_FROM=`seth --keystore=$PWD/keystore ls | awk '{print $1}'` + cast call $GREETER "greet()" | cast --to-ascii ``` +### Contract deployment -1. Send a transaction. - When asked for the pass phrase just click Enter. +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. 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,6 +400,7 @@ 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 diff --git a/getting-started/assets/remix-connect.png b/getting-started/assets/remix-connect.png index af1f1f2d..7b3137cd 100644 Binary files a/getting-started/assets/remix-connect.png and b/getting-started/assets/remix-connect.png differ diff --git a/getting-started/assets/remix-deploy.png b/getting-started/assets/remix-deploy.png new file mode 100644 index 00000000..2798b980 Binary files /dev/null and b/getting-started/assets/remix-deploy.png differ diff --git a/getting-started/assets/remix-env.png b/getting-started/assets/remix-env.png index 4962f718..7348a028 100644 Binary files a/getting-started/assets/remix-env.png and b/getting-started/assets/remix-env.png differ diff --git a/getting-started/assets/remix-tx.png b/getting-started/assets/remix-tx.png index 1470d9e4..6e167c26 100644 Binary files a/getting-started/assets/remix-tx.png and b/getting-started/assets/remix-tx.png differ diff --git a/getting-started/dapptools/keystore/UTC--2022-02-11T02-01-36.256828545Z--f39fd6e51aad88f6f4ce6ab8827279cfffb92266 b/getting-started/dapptools/keystore/UTC--2022-02-11T02-01-36.256828545Z--f39fd6e51aad88f6f4ce6ab8827279cfffb92266 deleted file mode 100644 index d5de544b..00000000 --- a/getting-started/dapptools/keystore/UTC--2022-02-11T02-01-36.256828545Z--f39fd6e51aad88f6f4ce6ab8827279cfffb92266 +++ /dev/null @@ -1 +0,0 @@ -{"address":"f39fd6e51aad88f6f4ce6ab8827279cfffb92266","crypto":{"cipher":"aes-128-ctr","ciphertext":"609506313ddf662c4723ef026ef2a3fd505b1a87be8b19074511845c0165247f","cipherparams":{"iv":"c3f49ce1a6451160be55f04d470cfd9e"},"kdf":"scrypt","kdfparams":{"dklen":32,"n":262144,"p":1,"r":8,"salt":"e3b72b0b3c1ee26da2ce4a90c52ea4d45290f91707fe87a31b31aa5f86d6037b"},"mac":"c52a974245c8097758c7a2b00f4b81522fe74961c1ef72741082da4684e72fbe"},"id":"d8353ea8-e493-44e3-bad4-80bb98797097","version":3} \ No newline at end of file diff --git a/getting-started/foundry/foundry.toml b/getting-started/foundry/foundry.toml new file mode 100644 index 00000000..d7dd144b --- /dev/null +++ b/getting-started/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/getting-started/foundry/lib/forge-std b/getting-started/foundry/lib/forge-std new file mode 160000 index 00000000..6f3b43ca --- /dev/null +++ b/getting-started/foundry/lib/forge-std @@ -0,0 +1 @@ +Subproject commit 6f3b43cad7476a5aa7be5c5f27388f0ce40b0424 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/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/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==