From 5cee842559aeb9da0349063ebf381fb4584d9727 Mon Sep 17 00:00:00 2001 From: onahprosperity Date: Wed, 26 Jun 2024 14:58:00 +0100 Subject: [PATCH 1/5] chore: new contracts deployed --- .openzeppelin/base-sepolia.json | 267 ++++++++++++++++++++++++++++++ .openzeppelin/sepolia.json | 267 ++++++++++++++++++++++++++++++ .openzeppelin/unknown-421614.json | 267 ++++++++++++++++++++++++++++++ README.md | 6 +- 4 files changed, 804 insertions(+), 3 deletions(-) diff --git a/.openzeppelin/base-sepolia.json b/.openzeppelin/base-sepolia.json index 9e2fd44..e0d77d7 100644 --- a/.openzeppelin/base-sepolia.json +++ b/.openzeppelin/base-sepolia.json @@ -613,6 +613,273 @@ }, "namespaces": {} } + }, + "0f100866e1d2f49be7a59745c8f958cdaad8acdf57c5197a7fef1472f55f7a43": { + "address": "0xfB411Cc6385Af50A562aFCb441864E9d541CDA67", + "txHash": "0x22576ec6c30b5f604252560551c4d96e311dfe67f0ab810cbd2594b2683baa66", + "layout": { + "solcVersion": "0.8.18", + "storage": [ + { + "label": "_initialized", + "offset": 0, + "slot": "0", + "type": "t_uint8", + "contract": "Initializable", + "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:63", + "retypedFrom": "bool" + }, + { + "label": "_initializing", + "offset": 1, + "slot": "0", + "type": "t_bool", + "contract": "Initializable", + "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:68" + }, + { + "label": "__gap", + "offset": 0, + "slot": "1", + "type": "t_array(t_uint256)50_storage", + "contract": "ContextUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:40" + }, + { + "label": "_owner", + "offset": 0, + "slot": "51", + "type": "t_address", + "contract": "OwnableUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol:22" + }, + { + "label": "__gap", + "offset": 0, + "slot": "52", + "type": "t_array(t_uint256)49_storage", + "contract": "OwnableUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol:94" + }, + { + "label": "_pendingOwner", + "offset": 0, + "slot": "101", + "type": "t_address", + "contract": "Ownable2StepUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/Ownable2StepUpgradeable.sol:21" + }, + { + "label": "__gap", + "offset": 0, + "slot": "102", + "type": "t_array(t_uint256)49_storage", + "contract": "Ownable2StepUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/Ownable2StepUpgradeable.sol:70" + }, + { + "label": "MAX_BPS", + "offset": 0, + "slot": "151", + "type": "t_uint256", + "contract": "GatewaySettingManager", + "src": "contracts/GatewaySettingManager.sol:12" + }, + { + "label": "protocolFeePercent", + "offset": 0, + "slot": "152", + "type": "t_uint64", + "contract": "GatewaySettingManager", + "src": "contracts/GatewaySettingManager.sol:13" + }, + { + "label": "treasuryAddress", + "offset": 8, + "slot": "152", + "type": "t_address", + "contract": "GatewaySettingManager", + "src": "contracts/GatewaySettingManager.sol:14" + }, + { + "label": "_aggregatorAddress", + "offset": 0, + "slot": "153", + "type": "t_address", + "contract": "GatewaySettingManager", + "src": "contracts/GatewaySettingManager.sol:15" + }, + { + "label": "_isTokenSupported", + "offset": 0, + "slot": "154", + "type": "t_mapping(t_address,t_uint256)", + "contract": "GatewaySettingManager", + "src": "contracts/GatewaySettingManager.sol:16" + }, + { + "label": "__gap", + "offset": 0, + "slot": "155", + "type": "t_array(t_uint256)50_storage", + "contract": "GatewaySettingManager", + "src": "contracts/GatewaySettingManager.sol:19" + }, + { + "label": "_paused", + "offset": 0, + "slot": "205", + "type": "t_bool", + "contract": "PausableUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol:29" + }, + { + "label": "__gap", + "offset": 0, + "slot": "206", + "type": "t_array(t_uint256)49_storage", + "contract": "PausableUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol:116" + }, + { + "label": "order", + "offset": 0, + "slot": "255", + "type": "t_mapping(t_bytes32,t_struct(Order)1827_storage)", + "contract": "Gateway", + "src": "contracts/Gateway.sol:19" + }, + { + "label": "_nonce", + "offset": 0, + "slot": "256", + "type": "t_mapping(t_address,t_uint256)", + "contract": "Gateway", + "src": "contracts/Gateway.sol:20" + }, + { + "label": "__gap", + "offset": 0, + "slot": "257", + "type": "t_array(t_uint256)50_storage", + "contract": "Gateway", + "src": "contracts/Gateway.sol:21" + } + ], + "types": { + "t_address": { + "label": "address", + "numberOfBytes": "20" + }, + "t_array(t_uint256)49_storage": { + "label": "uint256[49]", + "numberOfBytes": "1568" + }, + "t_array(t_uint256)50_storage": { + "label": "uint256[50]", + "numberOfBytes": "1600" + }, + "t_bool": { + "label": "bool", + "numberOfBytes": "1" + }, + "t_bytes32": { + "label": "bytes32", + "numberOfBytes": "32" + }, + "t_mapping(t_address,t_uint256)": { + "label": "mapping(address => uint256)", + "numberOfBytes": "32" + }, + "t_mapping(t_bytes32,t_struct(Order)1827_storage)": { + "label": "mapping(bytes32 => struct IGateway.Order)", + "numberOfBytes": "32" + }, + "t_struct(Order)1827_storage": { + "label": "struct IGateway.Order", + "members": [ + { + "label": "sender", + "type": "t_address", + "offset": 0, + "slot": "0" + }, + { + "label": "token", + "type": "t_address", + "offset": 0, + "slot": "1" + }, + { + "label": "senderFeeRecipient", + "type": "t_address", + "offset": 0, + "slot": "2" + }, + { + "label": "senderFee", + "type": "t_uint256", + "offset": 0, + "slot": "3" + }, + { + "label": "protocolFee", + "type": "t_uint256", + "offset": 0, + "slot": "4" + }, + { + "label": "isFulfilled", + "type": "t_bool", + "offset": 0, + "slot": "5" + }, + { + "label": "isRefunded", + "type": "t_bool", + "offset": 1, + "slot": "5" + }, + { + "label": "refundAddress", + "type": "t_address", + "offset": 2, + "slot": "5" + }, + { + "label": "currentBPS", + "type": "t_uint96", + "offset": 0, + "slot": "6" + }, + { + "label": "amount", + "type": "t_uint256", + "offset": 0, + "slot": "7" + } + ], + "numberOfBytes": "256" + }, + "t_uint256": { + "label": "uint256", + "numberOfBytes": "32" + }, + "t_uint64": { + "label": "uint64", + "numberOfBytes": "8" + }, + "t_uint8": { + "label": "uint8", + "numberOfBytes": "1" + }, + "t_uint96": { + "label": "uint96", + "numberOfBytes": "12" + } + }, + "namespaces": {} + } } } } diff --git a/.openzeppelin/sepolia.json b/.openzeppelin/sepolia.json index fc2f2d9..075a96b 100644 --- a/.openzeppelin/sepolia.json +++ b/.openzeppelin/sepolia.json @@ -955,6 +955,273 @@ }, "namespaces": {} } + }, + "0f100866e1d2f49be7a59745c8f958cdaad8acdf57c5197a7fef1472f55f7a43": { + "address": "0xafbf71A72d30f81eb66baaF904ea537fD35dd106", + "txHash": "0x6d9de2d7b179d6c13b3c876d9ffac322cd8ebcda04faa1956dcfdb93d55824d0", + "layout": { + "solcVersion": "0.8.18", + "storage": [ + { + "label": "_initialized", + "offset": 0, + "slot": "0", + "type": "t_uint8", + "contract": "Initializable", + "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:63", + "retypedFrom": "bool" + }, + { + "label": "_initializing", + "offset": 1, + "slot": "0", + "type": "t_bool", + "contract": "Initializable", + "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:68" + }, + { + "label": "__gap", + "offset": 0, + "slot": "1", + "type": "t_array(t_uint256)50_storage", + "contract": "ContextUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:40" + }, + { + "label": "_owner", + "offset": 0, + "slot": "51", + "type": "t_address", + "contract": "OwnableUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol:22" + }, + { + "label": "__gap", + "offset": 0, + "slot": "52", + "type": "t_array(t_uint256)49_storage", + "contract": "OwnableUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol:94" + }, + { + "label": "_pendingOwner", + "offset": 0, + "slot": "101", + "type": "t_address", + "contract": "Ownable2StepUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/Ownable2StepUpgradeable.sol:21" + }, + { + "label": "__gap", + "offset": 0, + "slot": "102", + "type": "t_array(t_uint256)49_storage", + "contract": "Ownable2StepUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/Ownable2StepUpgradeable.sol:70" + }, + { + "label": "MAX_BPS", + "offset": 0, + "slot": "151", + "type": "t_uint256", + "contract": "GatewaySettingManager", + "src": "contracts/GatewaySettingManager.sol:12" + }, + { + "label": "protocolFeePercent", + "offset": 0, + "slot": "152", + "type": "t_uint64", + "contract": "GatewaySettingManager", + "src": "contracts/GatewaySettingManager.sol:13" + }, + { + "label": "treasuryAddress", + "offset": 8, + "slot": "152", + "type": "t_address", + "contract": "GatewaySettingManager", + "src": "contracts/GatewaySettingManager.sol:14" + }, + { + "label": "_aggregatorAddress", + "offset": 0, + "slot": "153", + "type": "t_address", + "contract": "GatewaySettingManager", + "src": "contracts/GatewaySettingManager.sol:15" + }, + { + "label": "_isTokenSupported", + "offset": 0, + "slot": "154", + "type": "t_mapping(t_address,t_uint256)", + "contract": "GatewaySettingManager", + "src": "contracts/GatewaySettingManager.sol:16" + }, + { + "label": "__gap", + "offset": 0, + "slot": "155", + "type": "t_array(t_uint256)50_storage", + "contract": "GatewaySettingManager", + "src": "contracts/GatewaySettingManager.sol:19" + }, + { + "label": "_paused", + "offset": 0, + "slot": "205", + "type": "t_bool", + "contract": "PausableUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol:29" + }, + { + "label": "__gap", + "offset": 0, + "slot": "206", + "type": "t_array(t_uint256)49_storage", + "contract": "PausableUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol:116" + }, + { + "label": "order", + "offset": 0, + "slot": "255", + "type": "t_mapping(t_bytes32,t_struct(Order)1827_storage)", + "contract": "Gateway", + "src": "contracts/Gateway.sol:19" + }, + { + "label": "_nonce", + "offset": 0, + "slot": "256", + "type": "t_mapping(t_address,t_uint256)", + "contract": "Gateway", + "src": "contracts/Gateway.sol:20" + }, + { + "label": "__gap", + "offset": 0, + "slot": "257", + "type": "t_array(t_uint256)50_storage", + "contract": "Gateway", + "src": "contracts/Gateway.sol:21" + } + ], + "types": { + "t_address": { + "label": "address", + "numberOfBytes": "20" + }, + "t_array(t_uint256)49_storage": { + "label": "uint256[49]", + "numberOfBytes": "1568" + }, + "t_array(t_uint256)50_storage": { + "label": "uint256[50]", + "numberOfBytes": "1600" + }, + "t_bool": { + "label": "bool", + "numberOfBytes": "1" + }, + "t_bytes32": { + "label": "bytes32", + "numberOfBytes": "32" + }, + "t_mapping(t_address,t_uint256)": { + "label": "mapping(address => uint256)", + "numberOfBytes": "32" + }, + "t_mapping(t_bytes32,t_struct(Order)1827_storage)": { + "label": "mapping(bytes32 => struct IGateway.Order)", + "numberOfBytes": "32" + }, + "t_struct(Order)1827_storage": { + "label": "struct IGateway.Order", + "members": [ + { + "label": "sender", + "type": "t_address", + "offset": 0, + "slot": "0" + }, + { + "label": "token", + "type": "t_address", + "offset": 0, + "slot": "1" + }, + { + "label": "senderFeeRecipient", + "type": "t_address", + "offset": 0, + "slot": "2" + }, + { + "label": "senderFee", + "type": "t_uint256", + "offset": 0, + "slot": "3" + }, + { + "label": "protocolFee", + "type": "t_uint256", + "offset": 0, + "slot": "4" + }, + { + "label": "isFulfilled", + "type": "t_bool", + "offset": 0, + "slot": "5" + }, + { + "label": "isRefunded", + "type": "t_bool", + "offset": 1, + "slot": "5" + }, + { + "label": "refundAddress", + "type": "t_address", + "offset": 2, + "slot": "5" + }, + { + "label": "currentBPS", + "type": "t_uint96", + "offset": 0, + "slot": "6" + }, + { + "label": "amount", + "type": "t_uint256", + "offset": 0, + "slot": "7" + } + ], + "numberOfBytes": "256" + }, + "t_uint256": { + "label": "uint256", + "numberOfBytes": "32" + }, + "t_uint64": { + "label": "uint64", + "numberOfBytes": "8" + }, + "t_uint8": { + "label": "uint8", + "numberOfBytes": "1" + }, + "t_uint96": { + "label": "uint96", + "numberOfBytes": "12" + } + }, + "namespaces": {} + } } } } diff --git a/.openzeppelin/unknown-421614.json b/.openzeppelin/unknown-421614.json index 8096d63..0b952e2 100644 --- a/.openzeppelin/unknown-421614.json +++ b/.openzeppelin/unknown-421614.json @@ -283,6 +283,273 @@ }, "namespaces": {} } + }, + "0f100866e1d2f49be7a59745c8f958cdaad8acdf57c5197a7fef1472f55f7a43": { + "address": "0xD01abCEEeacfC91d2eCE31422DFe531004A7D2e6", + "txHash": "0x0dd450b7f5db5229312530034997c9a2fc47f20d98a7ab82439e07ac6320af1a", + "layout": { + "solcVersion": "0.8.18", + "storage": [ + { + "label": "_initialized", + "offset": 0, + "slot": "0", + "type": "t_uint8", + "contract": "Initializable", + "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:63", + "retypedFrom": "bool" + }, + { + "label": "_initializing", + "offset": 1, + "slot": "0", + "type": "t_bool", + "contract": "Initializable", + "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:68" + }, + { + "label": "__gap", + "offset": 0, + "slot": "1", + "type": "t_array(t_uint256)50_storage", + "contract": "ContextUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:40" + }, + { + "label": "_owner", + "offset": 0, + "slot": "51", + "type": "t_address", + "contract": "OwnableUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol:22" + }, + { + "label": "__gap", + "offset": 0, + "slot": "52", + "type": "t_array(t_uint256)49_storage", + "contract": "OwnableUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol:94" + }, + { + "label": "_pendingOwner", + "offset": 0, + "slot": "101", + "type": "t_address", + "contract": "Ownable2StepUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/Ownable2StepUpgradeable.sol:21" + }, + { + "label": "__gap", + "offset": 0, + "slot": "102", + "type": "t_array(t_uint256)49_storage", + "contract": "Ownable2StepUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/Ownable2StepUpgradeable.sol:70" + }, + { + "label": "MAX_BPS", + "offset": 0, + "slot": "151", + "type": "t_uint256", + "contract": "GatewaySettingManager", + "src": "contracts/GatewaySettingManager.sol:12" + }, + { + "label": "protocolFeePercent", + "offset": 0, + "slot": "152", + "type": "t_uint64", + "contract": "GatewaySettingManager", + "src": "contracts/GatewaySettingManager.sol:13" + }, + { + "label": "treasuryAddress", + "offset": 8, + "slot": "152", + "type": "t_address", + "contract": "GatewaySettingManager", + "src": "contracts/GatewaySettingManager.sol:14" + }, + { + "label": "_aggregatorAddress", + "offset": 0, + "slot": "153", + "type": "t_address", + "contract": "GatewaySettingManager", + "src": "contracts/GatewaySettingManager.sol:15" + }, + { + "label": "_isTokenSupported", + "offset": 0, + "slot": "154", + "type": "t_mapping(t_address,t_uint256)", + "contract": "GatewaySettingManager", + "src": "contracts/GatewaySettingManager.sol:16" + }, + { + "label": "__gap", + "offset": 0, + "slot": "155", + "type": "t_array(t_uint256)50_storage", + "contract": "GatewaySettingManager", + "src": "contracts/GatewaySettingManager.sol:19" + }, + { + "label": "_paused", + "offset": 0, + "slot": "205", + "type": "t_bool", + "contract": "PausableUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol:29" + }, + { + "label": "__gap", + "offset": 0, + "slot": "206", + "type": "t_array(t_uint256)49_storage", + "contract": "PausableUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol:116" + }, + { + "label": "order", + "offset": 0, + "slot": "255", + "type": "t_mapping(t_bytes32,t_struct(Order)2469_storage)", + "contract": "Gateway", + "src": "contracts/Gateway.sol:19" + }, + { + "label": "_nonce", + "offset": 0, + "slot": "256", + "type": "t_mapping(t_address,t_uint256)", + "contract": "Gateway", + "src": "contracts/Gateway.sol:20" + }, + { + "label": "__gap", + "offset": 0, + "slot": "257", + "type": "t_array(t_uint256)50_storage", + "contract": "Gateway", + "src": "contracts/Gateway.sol:21" + } + ], + "types": { + "t_address": { + "label": "address", + "numberOfBytes": "20" + }, + "t_array(t_uint256)49_storage": { + "label": "uint256[49]", + "numberOfBytes": "1568" + }, + "t_array(t_uint256)50_storage": { + "label": "uint256[50]", + "numberOfBytes": "1600" + }, + "t_bool": { + "label": "bool", + "numberOfBytes": "1" + }, + "t_bytes32": { + "label": "bytes32", + "numberOfBytes": "32" + }, + "t_mapping(t_address,t_uint256)": { + "label": "mapping(address => uint256)", + "numberOfBytes": "32" + }, + "t_mapping(t_bytes32,t_struct(Order)2469_storage)": { + "label": "mapping(bytes32 => struct IGateway.Order)", + "numberOfBytes": "32" + }, + "t_struct(Order)2469_storage": { + "label": "struct IGateway.Order", + "members": [ + { + "label": "sender", + "type": "t_address", + "offset": 0, + "slot": "0" + }, + { + "label": "token", + "type": "t_address", + "offset": 0, + "slot": "1" + }, + { + "label": "senderFeeRecipient", + "type": "t_address", + "offset": 0, + "slot": "2" + }, + { + "label": "senderFee", + "type": "t_uint256", + "offset": 0, + "slot": "3" + }, + { + "label": "protocolFee", + "type": "t_uint256", + "offset": 0, + "slot": "4" + }, + { + "label": "isFulfilled", + "type": "t_bool", + "offset": 0, + "slot": "5" + }, + { + "label": "isRefunded", + "type": "t_bool", + "offset": 1, + "slot": "5" + }, + { + "label": "refundAddress", + "type": "t_address", + "offset": 2, + "slot": "5" + }, + { + "label": "currentBPS", + "type": "t_uint96", + "offset": 0, + "slot": "6" + }, + { + "label": "amount", + "type": "t_uint256", + "offset": 0, + "slot": "7" + } + ], + "numberOfBytes": "256" + }, + "t_uint256": { + "label": "uint256", + "numberOfBytes": "32" + }, + "t_uint64": { + "label": "uint64", + "numberOfBytes": "8" + }, + "t_uint8": { + "label": "uint8", + "numberOfBytes": "1" + }, + "t_uint96": { + "label": "uint96", + "numberOfBytes": "12" + } + }, + "namespaces": {} + } } } } diff --git a/README.md b/README.md index c02f73d..e7e37b3 100644 --- a/README.md +++ b/README.md @@ -68,7 +68,7 @@ npx hardhat run scripts/tron/updateProtocolFee.ts Gateway Implementation - 0x5E7eC39915F6CD48829d06648F6682765846602a + 0xafbf71A72d30f81eb66baaF904ea537fD35dd106 @@ -80,7 +80,7 @@ npx hardhat run scripts/tron/updateProtocolFee.ts Gateway Implementation - 0x30F6A8457F8E42371E204a9c103f2Bd42341dD0F + 0xD01abCEEeacfC91d2eCE31422DFe531004A7D2e6 @@ -92,7 +92,7 @@ npx hardhat run scripts/tron/updateProtocolFee.ts Gateway Implementation - 0xCAD53Ff499155Cc2fAA2082A85716322906886c2 + 0xfB411Cc6385Af50A562aFCb441864E9d541CDA67 From 1b7a8af83d76b4d5f8e6eb99bd3be139f574473a Mon Sep 17 00:00:00 2001 From: onahprosperity Date: Mon, 1 Jul 2024 07:38:38 +0100 Subject: [PATCH 2/5] chore: upgrades Gateway.sol accross all chains --- migrations/2_upgrade.js | 3 ++- scripts/upgrade.ts | 5 +++++ tronbox.js | 2 +- 3 files changed, 8 insertions(+), 2 deletions(-) diff --git a/migrations/2_upgrade.js b/migrations/2_upgrade.js index 9842d82..6b7b3e2 100644 --- a/migrations/2_upgrade.js +++ b/migrations/2_upgrade.js @@ -4,7 +4,8 @@ const ProxyAdmin = artifacts.require( ); const Gateway = artifacts.require("Gateway"); -const proxyContractAddress = "TAmw9Yq6axjkQV6vTH21qXJVEGwUnvVL6L" +const proxyContractAddress = "THyFP5ST9YyLZn6EzjKjFhZti6aKPgEXNU"; +// Shasta: "TYA8urq7nkN2yU7rJqAgwDShCusDZrrsxZ"; module.exports = async function (deployer) { try { diff --git a/scripts/upgrade.ts b/scripts/upgrade.ts index 0e1af66..6f5c4b8 100644 --- a/scripts/upgrade.ts +++ b/scripts/upgrade.ts @@ -1,5 +1,6 @@ import { ethers, upgrades, network } from "hardhat"; import { NETWORKS } from "./config"; +import hre from "hardhat"; const networkConfig = NETWORKS[network.config.chainId as keyof typeof NETWORKS]; @@ -12,6 +13,10 @@ async function main() { ); console.log("✅ Upgraded Gateway: ", contract.address); + + await hre.run("verify:verify", { + address: contract.address, + }); } main().catch((error) => { diff --git a/tronbox.js b/tronbox.js index 4e9affe..2d72ea3 100644 --- a/tronbox.js +++ b/tronbox.js @@ -13,7 +13,7 @@ module.exports = { shasta: { privateKey: process.env.DEPLOYER_PRIVATE_KEY_TRON, userFeePercentage: 100, - feeLimit: 1e9, + feeLimit: 2e9, fullHost: "https://api.shasta.trongrid.io", network_id: "2", }, From ea6e74bdc1ba1beb5a786c4e90cada25b315601c Mon Sep 17 00:00:00 2001 From: onahprosperity Date: Mon, 1 Jul 2024 07:38:54 +0100 Subject: [PATCH 3/5] chore: update readme for new upgrades --- README.md | 27 ++++++++++++++++++++------- 1 file changed, 20 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index e7e37b3..3940916 100644 --- a/README.md +++ b/README.md @@ -101,10 +101,12 @@ npx hardhat run scripts/tron/updateProtocolFee.ts Tron Shasta Gateway Proxy TYA8urq7nkN2yU7rJqAgwDShCusDZrrsxZ + Gateway Admin + TNcogTDoWxpuv77WtsiNTRhqjRbZmmDLTR Gateway Implementation - TPddrcko4ceBWZpr7zPnbPbSnkLAMjBCCm + TSGr6Ri7NZ7FxN1gCiWkn8cPA2qtF6ctdF @@ -139,7 +141,7 @@ npx hardhat run scripts/tron/updateProtocolFee.ts Gateway Implementation - 0xafbf71A72d30f81eb66baaF904ea537fD35dd106 + 0x904aDFcf6Fd29F556aA12a64B2072bA4C426A928 @@ -151,7 +153,7 @@ npx hardhat run scripts/tron/updateProtocolFee.ts Gateway Implementation - 0x847dfdAa218F9137229CF8424378871A1DA8f625 + 0xfB411Cc6385Af50A562aFCb441864E9d541CDA67 @@ -163,7 +165,7 @@ npx hardhat run scripts/tron/updateProtocolFee.ts Gateway Implementation - 0x30F6A8457F8E42371E204a9c103f2Bd42341dD0F + 0x0a7aA9F8eab1665DD905288669447b66082E4B17 @@ -175,7 +177,7 @@ npx hardhat run scripts/tron/updateProtocolFee.ts Gateway Implementation - 0x87B321fc77A0fDD0ca1fEe7Ab791131157B9841A + 0x47afB97999801FD98CBD16Bb94F6efD2C779d242 Optimism Ethereum @@ -186,7 +188,7 @@ npx hardhat run scripts/tron/updateProtocolFee.ts Gateway Implementation - 0x7bA90e38327A4B82D8BF6B481C1b2Ed14228E91A + 0xB04c9622a583DEbe5fef8f5E594582490604D45c Scroll @@ -197,7 +199,18 @@ npx hardhat run scripts/tron/updateProtocolFee.ts Gateway Implementation - 0xD293fCd3dBc025603911853d893A4724CF9f70a0 + 0x5E7eC39915F6CD48829d06648F6682765846602a + + + Tron + Gateway Proxy + THyFP5ST9YyLZn6EzjKjFhZti6aKPgEXNU + Gateway Admin + TLw6AW9khfwLVq5gq9uV71wTVZEPxKjoiZ + + + Gateway Implementation + TDhBvHbnF8nN7YctokpdZAVPcmBx2Jrn2d From 46956c8402b8c24ac77b06fc2ad9ded857bbef4b Mon Sep 17 00:00:00 2001 From: onahprosperity Date: Mon, 1 Jul 2024 07:39:06 +0100 Subject: [PATCH 4/5] chore: builds to new upgrade --- .openzeppelin/arbitrum-one.json | 267 + .openzeppelin/base.json | 267 + .openzeppelin/bsc.json | 267 + .openzeppelin/optimism.json | 267 + .openzeppelin/polygon.json | 267 + .openzeppelin/unknown-534352.json | 267 + build/contracts/AddressUpgradeable.json | 1970 +++--- build/contracts/Context.json | 170 +- build/contracts/ContextUpgradeable.json | 298 +- build/contracts/ERC20.json | 3378 +++++----- build/contracts/Gateway.json | 5876 +++++++++--------- build/contracts/GatewaySettingManager.json | 1040 ++-- build/contracts/IERC20.json | 438 +- build/contracts/IERC20Metadata.json | 158 +- build/contracts/IGateway.json | 820 +-- build/contracts/Initializable.json | 878 +-- build/contracts/MockUSDT.json | 412 +- build/contracts/Ownable2StepUpgradeable.json | 642 +- build/contracts/OwnableUpgradeable.json | 742 +-- build/contracts/PausableUpgradeable.json | 690 +- 20 files changed, 10310 insertions(+), 8804 deletions(-) diff --git a/.openzeppelin/arbitrum-one.json b/.openzeppelin/arbitrum-one.json index cedf342..172941c 100644 --- a/.openzeppelin/arbitrum-one.json +++ b/.openzeppelin/arbitrum-one.json @@ -613,6 +613,273 @@ }, "namespaces": {} } + }, + "0f100866e1d2f49be7a59745c8f958cdaad8acdf57c5197a7fef1472f55f7a43": { + "address": "0x47afB97999801FD98CBD16Bb94F6efD2C779d242", + "txHash": "0x2e971ec283fcd60632fe7546eb18603b3c7363d7ce7d840cc680431587587b45", + "layout": { + "solcVersion": "0.8.18", + "storage": [ + { + "label": "_initialized", + "offset": 0, + "slot": "0", + "type": "t_uint8", + "contract": "Initializable", + "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:63", + "retypedFrom": "bool" + }, + { + "label": "_initializing", + "offset": 1, + "slot": "0", + "type": "t_bool", + "contract": "Initializable", + "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:68" + }, + { + "label": "__gap", + "offset": 0, + "slot": "1", + "type": "t_array(t_uint256)50_storage", + "contract": "ContextUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:40" + }, + { + "label": "_owner", + "offset": 0, + "slot": "51", + "type": "t_address", + "contract": "OwnableUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol:22" + }, + { + "label": "__gap", + "offset": 0, + "slot": "52", + "type": "t_array(t_uint256)49_storage", + "contract": "OwnableUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol:94" + }, + { + "label": "_pendingOwner", + "offset": 0, + "slot": "101", + "type": "t_address", + "contract": "Ownable2StepUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/Ownable2StepUpgradeable.sol:21" + }, + { + "label": "__gap", + "offset": 0, + "slot": "102", + "type": "t_array(t_uint256)49_storage", + "contract": "Ownable2StepUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/Ownable2StepUpgradeable.sol:70" + }, + { + "label": "MAX_BPS", + "offset": 0, + "slot": "151", + "type": "t_uint256", + "contract": "GatewaySettingManager", + "src": "contracts/GatewaySettingManager.sol:12" + }, + { + "label": "protocolFeePercent", + "offset": 0, + "slot": "152", + "type": "t_uint64", + "contract": "GatewaySettingManager", + "src": "contracts/GatewaySettingManager.sol:13" + }, + { + "label": "treasuryAddress", + "offset": 8, + "slot": "152", + "type": "t_address", + "contract": "GatewaySettingManager", + "src": "contracts/GatewaySettingManager.sol:14" + }, + { + "label": "_aggregatorAddress", + "offset": 0, + "slot": "153", + "type": "t_address", + "contract": "GatewaySettingManager", + "src": "contracts/GatewaySettingManager.sol:15" + }, + { + "label": "_isTokenSupported", + "offset": 0, + "slot": "154", + "type": "t_mapping(t_address,t_uint256)", + "contract": "GatewaySettingManager", + "src": "contracts/GatewaySettingManager.sol:16" + }, + { + "label": "__gap", + "offset": 0, + "slot": "155", + "type": "t_array(t_uint256)50_storage", + "contract": "GatewaySettingManager", + "src": "contracts/GatewaySettingManager.sol:19" + }, + { + "label": "_paused", + "offset": 0, + "slot": "205", + "type": "t_bool", + "contract": "PausableUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol:29" + }, + { + "label": "__gap", + "offset": 0, + "slot": "206", + "type": "t_array(t_uint256)49_storage", + "contract": "PausableUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol:116" + }, + { + "label": "order", + "offset": 0, + "slot": "255", + "type": "t_mapping(t_bytes32,t_struct(Order)1827_storage)", + "contract": "Gateway", + "src": "contracts/Gateway.sol:19" + }, + { + "label": "_nonce", + "offset": 0, + "slot": "256", + "type": "t_mapping(t_address,t_uint256)", + "contract": "Gateway", + "src": "contracts/Gateway.sol:20" + }, + { + "label": "__gap", + "offset": 0, + "slot": "257", + "type": "t_array(t_uint256)50_storage", + "contract": "Gateway", + "src": "contracts/Gateway.sol:21" + } + ], + "types": { + "t_address": { + "label": "address", + "numberOfBytes": "20" + }, + "t_array(t_uint256)49_storage": { + "label": "uint256[49]", + "numberOfBytes": "1568" + }, + "t_array(t_uint256)50_storage": { + "label": "uint256[50]", + "numberOfBytes": "1600" + }, + "t_bool": { + "label": "bool", + "numberOfBytes": "1" + }, + "t_bytes32": { + "label": "bytes32", + "numberOfBytes": "32" + }, + "t_mapping(t_address,t_uint256)": { + "label": "mapping(address => uint256)", + "numberOfBytes": "32" + }, + "t_mapping(t_bytes32,t_struct(Order)1827_storage)": { + "label": "mapping(bytes32 => struct IGateway.Order)", + "numberOfBytes": "32" + }, + "t_struct(Order)1827_storage": { + "label": "struct IGateway.Order", + "members": [ + { + "label": "sender", + "type": "t_address", + "offset": 0, + "slot": "0" + }, + { + "label": "token", + "type": "t_address", + "offset": 0, + "slot": "1" + }, + { + "label": "senderFeeRecipient", + "type": "t_address", + "offset": 0, + "slot": "2" + }, + { + "label": "senderFee", + "type": "t_uint256", + "offset": 0, + "slot": "3" + }, + { + "label": "protocolFee", + "type": "t_uint256", + "offset": 0, + "slot": "4" + }, + { + "label": "isFulfilled", + "type": "t_bool", + "offset": 0, + "slot": "5" + }, + { + "label": "isRefunded", + "type": "t_bool", + "offset": 1, + "slot": "5" + }, + { + "label": "refundAddress", + "type": "t_address", + "offset": 2, + "slot": "5" + }, + { + "label": "currentBPS", + "type": "t_uint96", + "offset": 0, + "slot": "6" + }, + { + "label": "amount", + "type": "t_uint256", + "offset": 0, + "slot": "7" + } + ], + "numberOfBytes": "256" + }, + "t_uint256": { + "label": "uint256", + "numberOfBytes": "32" + }, + "t_uint64": { + "label": "uint64", + "numberOfBytes": "8" + }, + "t_uint8": { + "label": "uint8", + "numberOfBytes": "1" + }, + "t_uint96": { + "label": "uint96", + "numberOfBytes": "12" + } + }, + "namespaces": {} + } } } } diff --git a/.openzeppelin/base.json b/.openzeppelin/base.json index e681e5e..62c76e5 100644 --- a/.openzeppelin/base.json +++ b/.openzeppelin/base.json @@ -613,6 +613,273 @@ }, "namespaces": {} } + }, + "0f100866e1d2f49be7a59745c8f958cdaad8acdf57c5197a7fef1472f55f7a43": { + "address": "0xfB411Cc6385Af50A562aFCb441864E9d541CDA67", + "txHash": "0x222270dcead9d39eb3d6e601ca7f8da38c4c8a600e0ad889b55efda9127bc8bd", + "layout": { + "solcVersion": "0.8.18", + "storage": [ + { + "label": "_initialized", + "offset": 0, + "slot": "0", + "type": "t_uint8", + "contract": "Initializable", + "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:63", + "retypedFrom": "bool" + }, + { + "label": "_initializing", + "offset": 1, + "slot": "0", + "type": "t_bool", + "contract": "Initializable", + "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:68" + }, + { + "label": "__gap", + "offset": 0, + "slot": "1", + "type": "t_array(t_uint256)50_storage", + "contract": "ContextUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:40" + }, + { + "label": "_owner", + "offset": 0, + "slot": "51", + "type": "t_address", + "contract": "OwnableUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol:22" + }, + { + "label": "__gap", + "offset": 0, + "slot": "52", + "type": "t_array(t_uint256)49_storage", + "contract": "OwnableUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol:94" + }, + { + "label": "_pendingOwner", + "offset": 0, + "slot": "101", + "type": "t_address", + "contract": "Ownable2StepUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/Ownable2StepUpgradeable.sol:21" + }, + { + "label": "__gap", + "offset": 0, + "slot": "102", + "type": "t_array(t_uint256)49_storage", + "contract": "Ownable2StepUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/Ownable2StepUpgradeable.sol:70" + }, + { + "label": "MAX_BPS", + "offset": 0, + "slot": "151", + "type": "t_uint256", + "contract": "GatewaySettingManager", + "src": "contracts/GatewaySettingManager.sol:12" + }, + { + "label": "protocolFeePercent", + "offset": 0, + "slot": "152", + "type": "t_uint64", + "contract": "GatewaySettingManager", + "src": "contracts/GatewaySettingManager.sol:13" + }, + { + "label": "treasuryAddress", + "offset": 8, + "slot": "152", + "type": "t_address", + "contract": "GatewaySettingManager", + "src": "contracts/GatewaySettingManager.sol:14" + }, + { + "label": "_aggregatorAddress", + "offset": 0, + "slot": "153", + "type": "t_address", + "contract": "GatewaySettingManager", + "src": "contracts/GatewaySettingManager.sol:15" + }, + { + "label": "_isTokenSupported", + "offset": 0, + "slot": "154", + "type": "t_mapping(t_address,t_uint256)", + "contract": "GatewaySettingManager", + "src": "contracts/GatewaySettingManager.sol:16" + }, + { + "label": "__gap", + "offset": 0, + "slot": "155", + "type": "t_array(t_uint256)50_storage", + "contract": "GatewaySettingManager", + "src": "contracts/GatewaySettingManager.sol:19" + }, + { + "label": "_paused", + "offset": 0, + "slot": "205", + "type": "t_bool", + "contract": "PausableUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol:29" + }, + { + "label": "__gap", + "offset": 0, + "slot": "206", + "type": "t_array(t_uint256)49_storage", + "contract": "PausableUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol:116" + }, + { + "label": "order", + "offset": 0, + "slot": "255", + "type": "t_mapping(t_bytes32,t_struct(Order)1827_storage)", + "contract": "Gateway", + "src": "contracts/Gateway.sol:19" + }, + { + "label": "_nonce", + "offset": 0, + "slot": "256", + "type": "t_mapping(t_address,t_uint256)", + "contract": "Gateway", + "src": "contracts/Gateway.sol:20" + }, + { + "label": "__gap", + "offset": 0, + "slot": "257", + "type": "t_array(t_uint256)50_storage", + "contract": "Gateway", + "src": "contracts/Gateway.sol:21" + } + ], + "types": { + "t_address": { + "label": "address", + "numberOfBytes": "20" + }, + "t_array(t_uint256)49_storage": { + "label": "uint256[49]", + "numberOfBytes": "1568" + }, + "t_array(t_uint256)50_storage": { + "label": "uint256[50]", + "numberOfBytes": "1600" + }, + "t_bool": { + "label": "bool", + "numberOfBytes": "1" + }, + "t_bytes32": { + "label": "bytes32", + "numberOfBytes": "32" + }, + "t_mapping(t_address,t_uint256)": { + "label": "mapping(address => uint256)", + "numberOfBytes": "32" + }, + "t_mapping(t_bytes32,t_struct(Order)1827_storage)": { + "label": "mapping(bytes32 => struct IGateway.Order)", + "numberOfBytes": "32" + }, + "t_struct(Order)1827_storage": { + "label": "struct IGateway.Order", + "members": [ + { + "label": "sender", + "type": "t_address", + "offset": 0, + "slot": "0" + }, + { + "label": "token", + "type": "t_address", + "offset": 0, + "slot": "1" + }, + { + "label": "senderFeeRecipient", + "type": "t_address", + "offset": 0, + "slot": "2" + }, + { + "label": "senderFee", + "type": "t_uint256", + "offset": 0, + "slot": "3" + }, + { + "label": "protocolFee", + "type": "t_uint256", + "offset": 0, + "slot": "4" + }, + { + "label": "isFulfilled", + "type": "t_bool", + "offset": 0, + "slot": "5" + }, + { + "label": "isRefunded", + "type": "t_bool", + "offset": 1, + "slot": "5" + }, + { + "label": "refundAddress", + "type": "t_address", + "offset": 2, + "slot": "5" + }, + { + "label": "currentBPS", + "type": "t_uint96", + "offset": 0, + "slot": "6" + }, + { + "label": "amount", + "type": "t_uint256", + "offset": 0, + "slot": "7" + } + ], + "numberOfBytes": "256" + }, + "t_uint256": { + "label": "uint256", + "numberOfBytes": "32" + }, + "t_uint64": { + "label": "uint64", + "numberOfBytes": "8" + }, + "t_uint8": { + "label": "uint8", + "numberOfBytes": "1" + }, + "t_uint96": { + "label": "uint96", + "numberOfBytes": "12" + } + }, + "namespaces": {} + } } } } diff --git a/.openzeppelin/bsc.json b/.openzeppelin/bsc.json index 2bf97fa..fdc1cde 100644 --- a/.openzeppelin/bsc.json +++ b/.openzeppelin/bsc.json @@ -613,6 +613,273 @@ }, "namespaces": {} } + }, + "0f100866e1d2f49be7a59745c8f958cdaad8acdf57c5197a7fef1472f55f7a43": { + "address": "0x0a7aA9F8eab1665DD905288669447b66082E4B17", + "txHash": "0xc4f6f00c66f8f2bcad5debd01bdfd36d2ffbd2e1fd56f138f741b40ab5e2b7dc", + "layout": { + "solcVersion": "0.8.18", + "storage": [ + { + "label": "_initialized", + "offset": 0, + "slot": "0", + "type": "t_uint8", + "contract": "Initializable", + "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:63", + "retypedFrom": "bool" + }, + { + "label": "_initializing", + "offset": 1, + "slot": "0", + "type": "t_bool", + "contract": "Initializable", + "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:68" + }, + { + "label": "__gap", + "offset": 0, + "slot": "1", + "type": "t_array(t_uint256)50_storage", + "contract": "ContextUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:40" + }, + { + "label": "_owner", + "offset": 0, + "slot": "51", + "type": "t_address", + "contract": "OwnableUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol:22" + }, + { + "label": "__gap", + "offset": 0, + "slot": "52", + "type": "t_array(t_uint256)49_storage", + "contract": "OwnableUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol:94" + }, + { + "label": "_pendingOwner", + "offset": 0, + "slot": "101", + "type": "t_address", + "contract": "Ownable2StepUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/Ownable2StepUpgradeable.sol:21" + }, + { + "label": "__gap", + "offset": 0, + "slot": "102", + "type": "t_array(t_uint256)49_storage", + "contract": "Ownable2StepUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/Ownable2StepUpgradeable.sol:70" + }, + { + "label": "MAX_BPS", + "offset": 0, + "slot": "151", + "type": "t_uint256", + "contract": "GatewaySettingManager", + "src": "contracts/GatewaySettingManager.sol:12" + }, + { + "label": "protocolFeePercent", + "offset": 0, + "slot": "152", + "type": "t_uint64", + "contract": "GatewaySettingManager", + "src": "contracts/GatewaySettingManager.sol:13" + }, + { + "label": "treasuryAddress", + "offset": 8, + "slot": "152", + "type": "t_address", + "contract": "GatewaySettingManager", + "src": "contracts/GatewaySettingManager.sol:14" + }, + { + "label": "_aggregatorAddress", + "offset": 0, + "slot": "153", + "type": "t_address", + "contract": "GatewaySettingManager", + "src": "contracts/GatewaySettingManager.sol:15" + }, + { + "label": "_isTokenSupported", + "offset": 0, + "slot": "154", + "type": "t_mapping(t_address,t_uint256)", + "contract": "GatewaySettingManager", + "src": "contracts/GatewaySettingManager.sol:16" + }, + { + "label": "__gap", + "offset": 0, + "slot": "155", + "type": "t_array(t_uint256)50_storage", + "contract": "GatewaySettingManager", + "src": "contracts/GatewaySettingManager.sol:19" + }, + { + "label": "_paused", + "offset": 0, + "slot": "205", + "type": "t_bool", + "contract": "PausableUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol:29" + }, + { + "label": "__gap", + "offset": 0, + "slot": "206", + "type": "t_array(t_uint256)49_storage", + "contract": "PausableUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol:116" + }, + { + "label": "order", + "offset": 0, + "slot": "255", + "type": "t_mapping(t_bytes32,t_struct(Order)1827_storage)", + "contract": "Gateway", + "src": "contracts/Gateway.sol:19" + }, + { + "label": "_nonce", + "offset": 0, + "slot": "256", + "type": "t_mapping(t_address,t_uint256)", + "contract": "Gateway", + "src": "contracts/Gateway.sol:20" + }, + { + "label": "__gap", + "offset": 0, + "slot": "257", + "type": "t_array(t_uint256)50_storage", + "contract": "Gateway", + "src": "contracts/Gateway.sol:21" + } + ], + "types": { + "t_address": { + "label": "address", + "numberOfBytes": "20" + }, + "t_array(t_uint256)49_storage": { + "label": "uint256[49]", + "numberOfBytes": "1568" + }, + "t_array(t_uint256)50_storage": { + "label": "uint256[50]", + "numberOfBytes": "1600" + }, + "t_bool": { + "label": "bool", + "numberOfBytes": "1" + }, + "t_bytes32": { + "label": "bytes32", + "numberOfBytes": "32" + }, + "t_mapping(t_address,t_uint256)": { + "label": "mapping(address => uint256)", + "numberOfBytes": "32" + }, + "t_mapping(t_bytes32,t_struct(Order)1827_storage)": { + "label": "mapping(bytes32 => struct IGateway.Order)", + "numberOfBytes": "32" + }, + "t_struct(Order)1827_storage": { + "label": "struct IGateway.Order", + "members": [ + { + "label": "sender", + "type": "t_address", + "offset": 0, + "slot": "0" + }, + { + "label": "token", + "type": "t_address", + "offset": 0, + "slot": "1" + }, + { + "label": "senderFeeRecipient", + "type": "t_address", + "offset": 0, + "slot": "2" + }, + { + "label": "senderFee", + "type": "t_uint256", + "offset": 0, + "slot": "3" + }, + { + "label": "protocolFee", + "type": "t_uint256", + "offset": 0, + "slot": "4" + }, + { + "label": "isFulfilled", + "type": "t_bool", + "offset": 0, + "slot": "5" + }, + { + "label": "isRefunded", + "type": "t_bool", + "offset": 1, + "slot": "5" + }, + { + "label": "refundAddress", + "type": "t_address", + "offset": 2, + "slot": "5" + }, + { + "label": "currentBPS", + "type": "t_uint96", + "offset": 0, + "slot": "6" + }, + { + "label": "amount", + "type": "t_uint256", + "offset": 0, + "slot": "7" + } + ], + "numberOfBytes": "256" + }, + "t_uint256": { + "label": "uint256", + "numberOfBytes": "32" + }, + "t_uint64": { + "label": "uint64", + "numberOfBytes": "8" + }, + "t_uint8": { + "label": "uint8", + "numberOfBytes": "1" + }, + "t_uint96": { + "label": "uint96", + "numberOfBytes": "12" + } + }, + "namespaces": {} + } } } } diff --git a/.openzeppelin/optimism.json b/.openzeppelin/optimism.json index 2ced5d3..094b921 100644 --- a/.openzeppelin/optimism.json +++ b/.openzeppelin/optimism.json @@ -283,6 +283,273 @@ }, "namespaces": {} } + }, + "0f100866e1d2f49be7a59745c8f958cdaad8acdf57c5197a7fef1472f55f7a43": { + "address": "0xB04c9622a583DEbe5fef8f5E594582490604D45c", + "txHash": "0xd1b54aebec1586998b0f52544ee427db67af4689e12b6be2e5bbc67aff24eeeb", + "layout": { + "solcVersion": "0.8.18", + "storage": [ + { + "label": "_initialized", + "offset": 0, + "slot": "0", + "type": "t_uint8", + "contract": "Initializable", + "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:63", + "retypedFrom": "bool" + }, + { + "label": "_initializing", + "offset": 1, + "slot": "0", + "type": "t_bool", + "contract": "Initializable", + "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:68" + }, + { + "label": "__gap", + "offset": 0, + "slot": "1", + "type": "t_array(t_uint256)50_storage", + "contract": "ContextUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:40" + }, + { + "label": "_owner", + "offset": 0, + "slot": "51", + "type": "t_address", + "contract": "OwnableUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol:22" + }, + { + "label": "__gap", + "offset": 0, + "slot": "52", + "type": "t_array(t_uint256)49_storage", + "contract": "OwnableUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol:94" + }, + { + "label": "_pendingOwner", + "offset": 0, + "slot": "101", + "type": "t_address", + "contract": "Ownable2StepUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/Ownable2StepUpgradeable.sol:21" + }, + { + "label": "__gap", + "offset": 0, + "slot": "102", + "type": "t_array(t_uint256)49_storage", + "contract": "Ownable2StepUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/Ownable2StepUpgradeable.sol:70" + }, + { + "label": "MAX_BPS", + "offset": 0, + "slot": "151", + "type": "t_uint256", + "contract": "GatewaySettingManager", + "src": "contracts/GatewaySettingManager.sol:12" + }, + { + "label": "protocolFeePercent", + "offset": 0, + "slot": "152", + "type": "t_uint64", + "contract": "GatewaySettingManager", + "src": "contracts/GatewaySettingManager.sol:13" + }, + { + "label": "treasuryAddress", + "offset": 8, + "slot": "152", + "type": "t_address", + "contract": "GatewaySettingManager", + "src": "contracts/GatewaySettingManager.sol:14" + }, + { + "label": "_aggregatorAddress", + "offset": 0, + "slot": "153", + "type": "t_address", + "contract": "GatewaySettingManager", + "src": "contracts/GatewaySettingManager.sol:15" + }, + { + "label": "_isTokenSupported", + "offset": 0, + "slot": "154", + "type": "t_mapping(t_address,t_uint256)", + "contract": "GatewaySettingManager", + "src": "contracts/GatewaySettingManager.sol:16" + }, + { + "label": "__gap", + "offset": 0, + "slot": "155", + "type": "t_array(t_uint256)50_storage", + "contract": "GatewaySettingManager", + "src": "contracts/GatewaySettingManager.sol:19" + }, + { + "label": "_paused", + "offset": 0, + "slot": "205", + "type": "t_bool", + "contract": "PausableUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol:29" + }, + { + "label": "__gap", + "offset": 0, + "slot": "206", + "type": "t_array(t_uint256)49_storage", + "contract": "PausableUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol:116" + }, + { + "label": "order", + "offset": 0, + "slot": "255", + "type": "t_mapping(t_bytes32,t_struct(Order)1827_storage)", + "contract": "Gateway", + "src": "contracts/Gateway.sol:19" + }, + { + "label": "_nonce", + "offset": 0, + "slot": "256", + "type": "t_mapping(t_address,t_uint256)", + "contract": "Gateway", + "src": "contracts/Gateway.sol:20" + }, + { + "label": "__gap", + "offset": 0, + "slot": "257", + "type": "t_array(t_uint256)50_storage", + "contract": "Gateway", + "src": "contracts/Gateway.sol:21" + } + ], + "types": { + "t_address": { + "label": "address", + "numberOfBytes": "20" + }, + "t_array(t_uint256)49_storage": { + "label": "uint256[49]", + "numberOfBytes": "1568" + }, + "t_array(t_uint256)50_storage": { + "label": "uint256[50]", + "numberOfBytes": "1600" + }, + "t_bool": { + "label": "bool", + "numberOfBytes": "1" + }, + "t_bytes32": { + "label": "bytes32", + "numberOfBytes": "32" + }, + "t_mapping(t_address,t_uint256)": { + "label": "mapping(address => uint256)", + "numberOfBytes": "32" + }, + "t_mapping(t_bytes32,t_struct(Order)1827_storage)": { + "label": "mapping(bytes32 => struct IGateway.Order)", + "numberOfBytes": "32" + }, + "t_struct(Order)1827_storage": { + "label": "struct IGateway.Order", + "members": [ + { + "label": "sender", + "type": "t_address", + "offset": 0, + "slot": "0" + }, + { + "label": "token", + "type": "t_address", + "offset": 0, + "slot": "1" + }, + { + "label": "senderFeeRecipient", + "type": "t_address", + "offset": 0, + "slot": "2" + }, + { + "label": "senderFee", + "type": "t_uint256", + "offset": 0, + "slot": "3" + }, + { + "label": "protocolFee", + "type": "t_uint256", + "offset": 0, + "slot": "4" + }, + { + "label": "isFulfilled", + "type": "t_bool", + "offset": 0, + "slot": "5" + }, + { + "label": "isRefunded", + "type": "t_bool", + "offset": 1, + "slot": "5" + }, + { + "label": "refundAddress", + "type": "t_address", + "offset": 2, + "slot": "5" + }, + { + "label": "currentBPS", + "type": "t_uint96", + "offset": 0, + "slot": "6" + }, + { + "label": "amount", + "type": "t_uint256", + "offset": 0, + "slot": "7" + } + ], + "numberOfBytes": "256" + }, + "t_uint256": { + "label": "uint256", + "numberOfBytes": "32" + }, + "t_uint64": { + "label": "uint64", + "numberOfBytes": "8" + }, + "t_uint8": { + "label": "uint8", + "numberOfBytes": "1" + }, + "t_uint96": { + "label": "uint96", + "numberOfBytes": "12" + } + }, + "namespaces": {} + } } } } diff --git a/.openzeppelin/polygon.json b/.openzeppelin/polygon.json index 56ef412..eee52b4 100644 --- a/.openzeppelin/polygon.json +++ b/.openzeppelin/polygon.json @@ -613,6 +613,273 @@ }, "namespaces": {} } + }, + "0f100866e1d2f49be7a59745c8f958cdaad8acdf57c5197a7fef1472f55f7a43": { + "address": "0x904aDFcf6Fd29F556aA12a64B2072bA4C426A928", + "txHash": "0xadff852f21de38b1463a77f04b8feca338b55426867ae5472d7b93d35885bd05", + "layout": { + "solcVersion": "0.8.18", + "storage": [ + { + "label": "_initialized", + "offset": 0, + "slot": "0", + "type": "t_uint8", + "contract": "Initializable", + "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:63", + "retypedFrom": "bool" + }, + { + "label": "_initializing", + "offset": 1, + "slot": "0", + "type": "t_bool", + "contract": "Initializable", + "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:68" + }, + { + "label": "__gap", + "offset": 0, + "slot": "1", + "type": "t_array(t_uint256)50_storage", + "contract": "ContextUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:40" + }, + { + "label": "_owner", + "offset": 0, + "slot": "51", + "type": "t_address", + "contract": "OwnableUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol:22" + }, + { + "label": "__gap", + "offset": 0, + "slot": "52", + "type": "t_array(t_uint256)49_storage", + "contract": "OwnableUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol:94" + }, + { + "label": "_pendingOwner", + "offset": 0, + "slot": "101", + "type": "t_address", + "contract": "Ownable2StepUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/Ownable2StepUpgradeable.sol:21" + }, + { + "label": "__gap", + "offset": 0, + "slot": "102", + "type": "t_array(t_uint256)49_storage", + "contract": "Ownable2StepUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/Ownable2StepUpgradeable.sol:70" + }, + { + "label": "MAX_BPS", + "offset": 0, + "slot": "151", + "type": "t_uint256", + "contract": "GatewaySettingManager", + "src": "contracts/GatewaySettingManager.sol:12" + }, + { + "label": "protocolFeePercent", + "offset": 0, + "slot": "152", + "type": "t_uint64", + "contract": "GatewaySettingManager", + "src": "contracts/GatewaySettingManager.sol:13" + }, + { + "label": "treasuryAddress", + "offset": 8, + "slot": "152", + "type": "t_address", + "contract": "GatewaySettingManager", + "src": "contracts/GatewaySettingManager.sol:14" + }, + { + "label": "_aggregatorAddress", + "offset": 0, + "slot": "153", + "type": "t_address", + "contract": "GatewaySettingManager", + "src": "contracts/GatewaySettingManager.sol:15" + }, + { + "label": "_isTokenSupported", + "offset": 0, + "slot": "154", + "type": "t_mapping(t_address,t_uint256)", + "contract": "GatewaySettingManager", + "src": "contracts/GatewaySettingManager.sol:16" + }, + { + "label": "__gap", + "offset": 0, + "slot": "155", + "type": "t_array(t_uint256)50_storage", + "contract": "GatewaySettingManager", + "src": "contracts/GatewaySettingManager.sol:19" + }, + { + "label": "_paused", + "offset": 0, + "slot": "205", + "type": "t_bool", + "contract": "PausableUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol:29" + }, + { + "label": "__gap", + "offset": 0, + "slot": "206", + "type": "t_array(t_uint256)49_storage", + "contract": "PausableUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol:116" + }, + { + "label": "order", + "offset": 0, + "slot": "255", + "type": "t_mapping(t_bytes32,t_struct(Order)1827_storage)", + "contract": "Gateway", + "src": "contracts/Gateway.sol:19" + }, + { + "label": "_nonce", + "offset": 0, + "slot": "256", + "type": "t_mapping(t_address,t_uint256)", + "contract": "Gateway", + "src": "contracts/Gateway.sol:20" + }, + { + "label": "__gap", + "offset": 0, + "slot": "257", + "type": "t_array(t_uint256)50_storage", + "contract": "Gateway", + "src": "contracts/Gateway.sol:21" + } + ], + "types": { + "t_address": { + "label": "address", + "numberOfBytes": "20" + }, + "t_array(t_uint256)49_storage": { + "label": "uint256[49]", + "numberOfBytes": "1568" + }, + "t_array(t_uint256)50_storage": { + "label": "uint256[50]", + "numberOfBytes": "1600" + }, + "t_bool": { + "label": "bool", + "numberOfBytes": "1" + }, + "t_bytes32": { + "label": "bytes32", + "numberOfBytes": "32" + }, + "t_mapping(t_address,t_uint256)": { + "label": "mapping(address => uint256)", + "numberOfBytes": "32" + }, + "t_mapping(t_bytes32,t_struct(Order)1827_storage)": { + "label": "mapping(bytes32 => struct IGateway.Order)", + "numberOfBytes": "32" + }, + "t_struct(Order)1827_storage": { + "label": "struct IGateway.Order", + "members": [ + { + "label": "sender", + "type": "t_address", + "offset": 0, + "slot": "0" + }, + { + "label": "token", + "type": "t_address", + "offset": 0, + "slot": "1" + }, + { + "label": "senderFeeRecipient", + "type": "t_address", + "offset": 0, + "slot": "2" + }, + { + "label": "senderFee", + "type": "t_uint256", + "offset": 0, + "slot": "3" + }, + { + "label": "protocolFee", + "type": "t_uint256", + "offset": 0, + "slot": "4" + }, + { + "label": "isFulfilled", + "type": "t_bool", + "offset": 0, + "slot": "5" + }, + { + "label": "isRefunded", + "type": "t_bool", + "offset": 1, + "slot": "5" + }, + { + "label": "refundAddress", + "type": "t_address", + "offset": 2, + "slot": "5" + }, + { + "label": "currentBPS", + "type": "t_uint96", + "offset": 0, + "slot": "6" + }, + { + "label": "amount", + "type": "t_uint256", + "offset": 0, + "slot": "7" + } + ], + "numberOfBytes": "256" + }, + "t_uint256": { + "label": "uint256", + "numberOfBytes": "32" + }, + "t_uint64": { + "label": "uint64", + "numberOfBytes": "8" + }, + "t_uint8": { + "label": "uint8", + "numberOfBytes": "1" + }, + "t_uint96": { + "label": "uint96", + "numberOfBytes": "12" + } + }, + "namespaces": {} + } } } } diff --git a/.openzeppelin/unknown-534352.json b/.openzeppelin/unknown-534352.json index 10f3f83..40d9c9e 100644 --- a/.openzeppelin/unknown-534352.json +++ b/.openzeppelin/unknown-534352.json @@ -278,6 +278,273 @@ }, "namespaces": {} } + }, + "0f100866e1d2f49be7a59745c8f958cdaad8acdf57c5197a7fef1472f55f7a43": { + "address": "0x5E7eC39915F6CD48829d06648F6682765846602a", + "txHash": "0xea72a16c09d4a63ec6e6812e17b85b1233f312519e6089db858c5088f2e28144", + "layout": { + "solcVersion": "0.8.18", + "storage": [ + { + "label": "_initialized", + "offset": 0, + "slot": "0", + "type": "t_uint8", + "contract": "Initializable", + "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:63", + "retypedFrom": "bool" + }, + { + "label": "_initializing", + "offset": 1, + "slot": "0", + "type": "t_bool", + "contract": "Initializable", + "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:68" + }, + { + "label": "__gap", + "offset": 0, + "slot": "1", + "type": "t_array(t_uint256)50_storage", + "contract": "ContextUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:40" + }, + { + "label": "_owner", + "offset": 0, + "slot": "51", + "type": "t_address", + "contract": "OwnableUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol:22" + }, + { + "label": "__gap", + "offset": 0, + "slot": "52", + "type": "t_array(t_uint256)49_storage", + "contract": "OwnableUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol:94" + }, + { + "label": "_pendingOwner", + "offset": 0, + "slot": "101", + "type": "t_address", + "contract": "Ownable2StepUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/Ownable2StepUpgradeable.sol:21" + }, + { + "label": "__gap", + "offset": 0, + "slot": "102", + "type": "t_array(t_uint256)49_storage", + "contract": "Ownable2StepUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/Ownable2StepUpgradeable.sol:70" + }, + { + "label": "MAX_BPS", + "offset": 0, + "slot": "151", + "type": "t_uint256", + "contract": "GatewaySettingManager", + "src": "contracts/GatewaySettingManager.sol:12" + }, + { + "label": "protocolFeePercent", + "offset": 0, + "slot": "152", + "type": "t_uint64", + "contract": "GatewaySettingManager", + "src": "contracts/GatewaySettingManager.sol:13" + }, + { + "label": "treasuryAddress", + "offset": 8, + "slot": "152", + "type": "t_address", + "contract": "GatewaySettingManager", + "src": "contracts/GatewaySettingManager.sol:14" + }, + { + "label": "_aggregatorAddress", + "offset": 0, + "slot": "153", + "type": "t_address", + "contract": "GatewaySettingManager", + "src": "contracts/GatewaySettingManager.sol:15" + }, + { + "label": "_isTokenSupported", + "offset": 0, + "slot": "154", + "type": "t_mapping(t_address,t_uint256)", + "contract": "GatewaySettingManager", + "src": "contracts/GatewaySettingManager.sol:16" + }, + { + "label": "__gap", + "offset": 0, + "slot": "155", + "type": "t_array(t_uint256)50_storage", + "contract": "GatewaySettingManager", + "src": "contracts/GatewaySettingManager.sol:19" + }, + { + "label": "_paused", + "offset": 0, + "slot": "205", + "type": "t_bool", + "contract": "PausableUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol:29" + }, + { + "label": "__gap", + "offset": 0, + "slot": "206", + "type": "t_array(t_uint256)49_storage", + "contract": "PausableUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol:116" + }, + { + "label": "order", + "offset": 0, + "slot": "255", + "type": "t_mapping(t_bytes32,t_struct(Order)1827_storage)", + "contract": "Gateway", + "src": "contracts/Gateway.sol:19" + }, + { + "label": "_nonce", + "offset": 0, + "slot": "256", + "type": "t_mapping(t_address,t_uint256)", + "contract": "Gateway", + "src": "contracts/Gateway.sol:20" + }, + { + "label": "__gap", + "offset": 0, + "slot": "257", + "type": "t_array(t_uint256)50_storage", + "contract": "Gateway", + "src": "contracts/Gateway.sol:21" + } + ], + "types": { + "t_address": { + "label": "address", + "numberOfBytes": "20" + }, + "t_array(t_uint256)49_storage": { + "label": "uint256[49]", + "numberOfBytes": "1568" + }, + "t_array(t_uint256)50_storage": { + "label": "uint256[50]", + "numberOfBytes": "1600" + }, + "t_bool": { + "label": "bool", + "numberOfBytes": "1" + }, + "t_bytes32": { + "label": "bytes32", + "numberOfBytes": "32" + }, + "t_mapping(t_address,t_uint256)": { + "label": "mapping(address => uint256)", + "numberOfBytes": "32" + }, + "t_mapping(t_bytes32,t_struct(Order)1827_storage)": { + "label": "mapping(bytes32 => struct IGateway.Order)", + "numberOfBytes": "32" + }, + "t_struct(Order)1827_storage": { + "label": "struct IGateway.Order", + "members": [ + { + "label": "sender", + "type": "t_address", + "offset": 0, + "slot": "0" + }, + { + "label": "token", + "type": "t_address", + "offset": 0, + "slot": "1" + }, + { + "label": "senderFeeRecipient", + "type": "t_address", + "offset": 0, + "slot": "2" + }, + { + "label": "senderFee", + "type": "t_uint256", + "offset": 0, + "slot": "3" + }, + { + "label": "protocolFee", + "type": "t_uint256", + "offset": 0, + "slot": "4" + }, + { + "label": "isFulfilled", + "type": "t_bool", + "offset": 0, + "slot": "5" + }, + { + "label": "isRefunded", + "type": "t_bool", + "offset": 1, + "slot": "5" + }, + { + "label": "refundAddress", + "type": "t_address", + "offset": 2, + "slot": "5" + }, + { + "label": "currentBPS", + "type": "t_uint96", + "offset": 0, + "slot": "6" + }, + { + "label": "amount", + "type": "t_uint256", + "offset": 0, + "slot": "7" + } + ], + "numberOfBytes": "256" + }, + "t_uint256": { + "label": "uint256", + "numberOfBytes": "32" + }, + "t_uint64": { + "label": "uint64", + "numberOfBytes": "8" + }, + "t_uint8": { + "label": "uint8", + "numberOfBytes": "1" + }, + "t_uint96": { + "label": "uint96", + "numberOfBytes": "12" + } + }, + "namespaces": {} + } } } } diff --git a/build/contracts/AddressUpgradeable.json b/build/contracts/AddressUpgradeable.json index 00af7aa..112b1e0 100644 --- a/build/contracts/AddressUpgradeable.json +++ b/build/contracts/AddressUpgradeable.json @@ -11,15 +11,15 @@ "absolutePath": "@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "exportedSymbols": { "AddressUpgradeable": [ - 1841 + 1838 ] }, - "id": 1842, + "id": 1839, "license": "MIT", "nodeType": "SourceUnit", "nodes": [ { - "id": 1513, + "id": 1510, "literals": [ "solidity", "^", @@ -36,15 +36,15 @@ "contractDependencies": [], "contractKind": "library", "documentation": { - "id": 1514, + "id": 1511, "nodeType": "StructuredDocumentation", "src": "126:67:8", "text": " @dev Collection of functions related to the address type" }, "fullyImplemented": true, - "id": 1841, + "id": 1838, "linearizedBaseContracts": [ - 1841 + 1838 ], "name": "AddressUpgradeable", "nameLocation": "202:18:8", @@ -52,7 +52,7 @@ "nodes": [ { "body": { - "id": 1528, + "id": 1525, "nodeType": "Block", "src": "1489:254:8", "statements": [ @@ -62,7 +62,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1526, + "id": 1523, "isConstant": false, "isLValue": false, "isPure": false, @@ -70,18 +70,18 @@ "leftExpression": { "expression": { "expression": { - "id": 1522, + "id": 1519, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1517, + "referencedDeclaration": 1514, "src": "1713:7:8", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 1523, + "id": 1520, "isConstant": false, "isLValue": false, "isPure": false, @@ -95,7 +95,7 @@ "typeString": "bytes memory" } }, - "id": 1524, + "id": 1521, "isConstant": false, "isLValue": false, "isPure": false, @@ -113,7 +113,7 @@ "operator": ">", "rightExpression": { "hexValue": "30", - "id": 1525, + "id": 1522, "isConstant": false, "isLValue": false, "isPure": true, @@ -133,20 +133,20 @@ "typeString": "bool" } }, - "functionReturnParameters": 1521, - "id": 1527, + "functionReturnParameters": 1518, + "id": 1524, "nodeType": "Return", "src": "1706:30:8" } ] }, "documentation": { - "id": 1515, + "id": 1512, "nodeType": "StructuredDocumentation", "src": "227:1191:8", "text": " @dev Returns true if `account` is a contract.\n [IMPORTANT]\n ====\n It is unsafe to assume that an address for which this function returns\n false is an externally-owned account (EOA) and not a contract.\n Among others, `isContract` will return false for the following\n types of addresses:\n - an externally-owned account\n - a contract in construction\n - an address where a contract will be created\n - an address where a contract lived, but was destroyed\n Furthermore, `isContract` will also return true if the target contract within\n the same transaction is already scheduled for destruction by `SELFDESTRUCT`,\n which only has an effect at the end of a transaction.\n ====\n [IMPORTANT]\n ====\n You shouldn't rely on `isContract` to protect against flash loan attacks!\n Preventing calls from contracts is highly discouraged. It breaks composability, breaks support for smart wallets\n like Gnosis Safe, and does not provide security since it can be circumvented by calling from a contract\n constructor.\n ====" }, - "id": 1529, + "id": 1526, "implemented": true, "kind": "function", "modifiers": [], @@ -154,17 +154,17 @@ "nameLocation": "1432:10:8", "nodeType": "FunctionDefinition", "parameters": { - "id": 1518, + "id": 1515, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1517, + "id": 1514, "mutability": "mutable", "name": "account", "nameLocation": "1451:7:8", "nodeType": "VariableDeclaration", - "scope": 1529, + "scope": 1526, "src": "1443:15:8", "stateVariable": false, "storageLocation": "default", @@ -173,7 +173,7 @@ "typeString": "address" }, "typeName": { - "id": 1516, + "id": 1513, "name": "address", "nodeType": "ElementaryTypeName", "src": "1443:7:8", @@ -189,17 +189,17 @@ "src": "1442:17:8" }, "returnParameters": { - "id": 1521, + "id": 1518, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1520, + "id": 1517, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 1529, + "scope": 1526, "src": "1483:4:8", "stateVariable": false, "storageLocation": "default", @@ -208,7 +208,7 @@ "typeString": "bool" }, "typeName": { - "id": 1519, + "id": 1516, "name": "bool", "nodeType": "ElementaryTypeName", "src": "1483:4:8", @@ -222,7 +222,7 @@ ], "src": "1482:6:8" }, - "scope": 1841, + "scope": 1838, "src": "1423:320:8", "stateMutability": "view", "virtual": false, @@ -230,7 +230,7 @@ }, { "body": { - "id": 1562, + "id": 1559, "nodeType": "Block", "src": "2729:241:8", "statements": [ @@ -242,7 +242,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1544, + "id": 1541, "isConstant": false, "isLValue": false, "isPure": false, @@ -251,14 +251,14 @@ "expression": { "arguments": [ { - "id": 1540, + "id": 1537, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967268, "src": "2755:4:8", "typeDescriptions": { - "typeIdentifier": "t_contract$_AddressUpgradeable_$1841", + "typeIdentifier": "t_contract$_AddressUpgradeable_$1838", "typeString": "library AddressUpgradeable" } } @@ -266,11 +266,11 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_AddressUpgradeable_$1841", + "typeIdentifier": "t_contract$_AddressUpgradeable_$1838", "typeString": "library AddressUpgradeable" } ], - "id": 1539, + "id": 1536, "isConstant": false, "isLValue": false, "isPure": true, @@ -282,14 +282,14 @@ "typeString": "type(address)" }, "typeName": { - "id": 1538, + "id": 1535, "name": "address", "nodeType": "ElementaryTypeName", "src": "2747:7:8", "typeDescriptions": {} } }, - "id": 1541, + "id": 1538, "isConstant": false, "isLValue": false, "isPure": false, @@ -305,7 +305,7 @@ "typeString": "address" } }, - "id": 1542, + "id": 1539, "isConstant": false, "isLValue": false, "isPure": false, @@ -322,11 +322,11 @@ "nodeType": "BinaryOperation", "operator": ">=", "rightExpression": { - "id": 1543, + "id": 1540, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1534, + "referencedDeclaration": 1531, "src": "2772:6:8", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -341,7 +341,7 @@ }, { "hexValue": "416464726573733a20696e73756666696369656e742062616c616e6365", - "id": 1545, + "id": 1542, "isConstant": false, "isLValue": false, "isPure": true, @@ -367,7 +367,7 @@ "typeString": "literal_string \"Address: insufficient balance\"" } ], - "id": 1537, + "id": 1534, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -381,7 +381,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 1546, + "id": 1543, "isConstant": false, "isLValue": false, "isPure": false, @@ -397,24 +397,24 @@ "typeString": "tuple()" } }, - "id": 1547, + "id": 1544, "nodeType": "ExpressionStatement", "src": "2739:73:8" }, { "assignments": [ - 1549, + 1546, null ], "declarations": [ { "constant": false, - "id": 1549, + "id": 1546, "mutability": "mutable", "name": "success", "nameLocation": "2829:7:8", "nodeType": "VariableDeclaration", - "scope": 1562, + "scope": 1559, "src": "2824:12:8", "stateVariable": false, "storageLocation": "default", @@ -423,7 +423,7 @@ "typeString": "bool" }, "typeName": { - "id": 1548, + "id": 1545, "name": "bool", "nodeType": "ElementaryTypeName", "src": "2824:4:8", @@ -436,12 +436,12 @@ }, null ], - "id": 1556, + "id": 1553, "initialValue": { "arguments": [ { "hexValue": "", - "id": 1554, + "id": 1551, "isConstant": false, "isLValue": false, "isPure": true, @@ -471,18 +471,18 @@ } ], "expression": { - "id": 1550, + "id": 1547, "name": "recipient", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1532, + "referencedDeclaration": 1529, "src": "2842:9:8", "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" } }, - "id": 1551, + "id": 1548, "isConstant": false, "isLValue": false, "isPure": false, @@ -496,7 +496,7 @@ "typeString": "function (bytes memory) payable returns (bool,bytes memory)" } }, - "id": 1553, + "id": 1550, "isConstant": false, "isLValue": false, "isPure": false, @@ -507,11 +507,11 @@ "nodeType": "FunctionCallOptions", "options": [ { - "id": 1552, + "id": 1549, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1534, + "referencedDeclaration": 1531, "src": "2864:6:8", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -525,7 +525,7 @@ "typeString": "function (bytes memory) payable returns (bool,bytes memory)" } }, - "id": 1555, + "id": 1552, "isConstant": false, "isLValue": false, "isPure": false, @@ -548,11 +548,11 @@ "expression": { "arguments": [ { - "id": 1558, + "id": 1555, "name": "success", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1549, + "referencedDeclaration": 1546, "src": "2893:7:8", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -561,7 +561,7 @@ }, { "hexValue": "416464726573733a20756e61626c6520746f2073656e642076616c75652c20726563697069656e74206d61792068617665207265766572746564", - "id": 1559, + "id": 1556, "isConstant": false, "isLValue": false, "isPure": true, @@ -587,7 +587,7 @@ "typeString": "literal_string \"Address: unable to send value, recipient may have reverted\"" } ], - "id": 1557, + "id": 1554, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -601,7 +601,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 1560, + "id": 1557, "isConstant": false, "isLValue": false, "isPure": false, @@ -617,19 +617,19 @@ "typeString": "tuple()" } }, - "id": 1561, + "id": 1558, "nodeType": "ExpressionStatement", "src": "2885:78:8" } ] }, "documentation": { - "id": 1530, + "id": 1527, "nodeType": "StructuredDocumentation", "src": "1749:904:8", "text": " @dev Replacement for Solidity's `transfer`: sends `amount` wei to\n `recipient`, forwarding all available gas and reverting on errors.\n https://eips.ethereum.org/EIPS/eip-1884[EIP1884] increases the gas cost\n of certain opcodes, possibly making contracts go over the 2300 gas limit\n imposed by `transfer`, making them unable to receive funds via\n `transfer`. {sendValue} removes this limitation.\n https://consensys.net/diligence/blog/2019/09/stop-using-soliditys-transfer-now/[Learn more].\n IMPORTANT: because control is transferred to `recipient`, care must be\n taken to not create reentrancy vulnerabilities. Consider using\n {ReentrancyGuard} or the\n https://solidity.readthedocs.io/en/v0.8.0/security-considerations.html#use-the-checks-effects-interactions-pattern[checks-effects-interactions pattern]." }, - "id": 1563, + "id": 1560, "implemented": true, "kind": "function", "modifiers": [], @@ -637,17 +637,17 @@ "nameLocation": "2667:9:8", "nodeType": "FunctionDefinition", "parameters": { - "id": 1535, + "id": 1532, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1532, + "id": 1529, "mutability": "mutable", "name": "recipient", "nameLocation": "2693:9:8", "nodeType": "VariableDeclaration", - "scope": 1563, + "scope": 1560, "src": "2677:25:8", "stateVariable": false, "storageLocation": "default", @@ -656,7 +656,7 @@ "typeString": "address payable" }, "typeName": { - "id": 1531, + "id": 1528, "name": "address", "nodeType": "ElementaryTypeName", "src": "2677:15:8", @@ -670,12 +670,12 @@ }, { "constant": false, - "id": 1534, + "id": 1531, "mutability": "mutable", "name": "amount", "nameLocation": "2712:6:8", "nodeType": "VariableDeclaration", - "scope": 1563, + "scope": 1560, "src": "2704:14:8", "stateVariable": false, "storageLocation": "default", @@ -684,7 +684,7 @@ "typeString": "uint256" }, "typeName": { - "id": 1533, + "id": 1530, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2704:7:8", @@ -699,12 +699,12 @@ "src": "2676:43:8" }, "returnParameters": { - "id": 1536, + "id": 1533, "nodeType": "ParameterList", "parameters": [], "src": "2729:0:8" }, - "scope": 1841, + "scope": 1838, "src": "2658:312:8", "stateMutability": "nonpayable", "virtual": false, @@ -712,7 +712,7 @@ }, { "body": { - "id": 1580, + "id": 1577, "nodeType": "Block", "src": "3801:96:8", "statements": [ @@ -720,11 +720,11 @@ "expression": { "arguments": [ { - "id": 1574, + "id": 1571, "name": "target", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1566, + "referencedDeclaration": 1563, "src": "3840:6:8", "typeDescriptions": { "typeIdentifier": "t_address", @@ -732,11 +732,11 @@ } }, { - "id": 1575, + "id": 1572, "name": "data", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1568, + "referencedDeclaration": 1565, "src": "3848:4:8", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -745,7 +745,7 @@ }, { "hexValue": "30", - "id": 1576, + "id": 1573, "isConstant": false, "isLValue": false, "isPure": true, @@ -761,7 +761,7 @@ }, { "hexValue": "416464726573733a206c6f772d6c6576656c2063616c6c206661696c6564", - "id": 1577, + "id": 1574, "isConstant": false, "isLValue": false, "isPure": true, @@ -795,21 +795,21 @@ "typeString": "literal_string \"Address: low-level call failed\"" } ], - "id": 1573, + "id": 1570, "name": "functionCallWithValue", "nodeType": "Identifier", "overloadedDeclarations": [ - 1621, - 1665 + 1618, + 1662 ], - "referencedDeclaration": 1665, + "referencedDeclaration": 1662, "src": "3818:21:8", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_bytes_memory_ptr_$_t_uint256_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", "typeString": "function (address,bytes memory,uint256,string memory) returns (bytes memory)" } }, - "id": 1578, + "id": 1575, "isConstant": false, "isLValue": false, "isPure": false, @@ -825,20 +825,20 @@ "typeString": "bytes memory" } }, - "functionReturnParameters": 1572, - "id": 1579, + "functionReturnParameters": 1569, + "id": 1576, "nodeType": "Return", "src": "3811:79:8" } ] }, "documentation": { - "id": 1564, + "id": 1561, "nodeType": "StructuredDocumentation", "src": "2976:731:8", "text": " @dev Performs a Solidity function call using a low level `call`. A\n plain `call` is an unsafe replacement for a function call: use this\n function instead.\n If `target` reverts with a revert reason, it is bubbled up by this\n function (like regular Solidity function calls).\n Returns the raw returned data. To convert to the expected return value,\n use https://solidity.readthedocs.io/en/latest/units-and-global-variables.html?highlight=abi.decode#abi-encoding-and-decoding-functions[`abi.decode`].\n Requirements:\n - `target` must be a contract.\n - calling `target` with `data` must not revert.\n _Available since v3.1._" }, - "id": 1581, + "id": 1578, "implemented": true, "kind": "function", "modifiers": [], @@ -846,17 +846,17 @@ "nameLocation": "3721:12:8", "nodeType": "FunctionDefinition", "parameters": { - "id": 1569, + "id": 1566, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1566, + "id": 1563, "mutability": "mutable", "name": "target", "nameLocation": "3742:6:8", "nodeType": "VariableDeclaration", - "scope": 1581, + "scope": 1578, "src": "3734:14:8", "stateVariable": false, "storageLocation": "default", @@ -865,7 +865,7 @@ "typeString": "address" }, "typeName": { - "id": 1565, + "id": 1562, "name": "address", "nodeType": "ElementaryTypeName", "src": "3734:7:8", @@ -879,12 +879,12 @@ }, { "constant": false, - "id": 1568, + "id": 1565, "mutability": "mutable", "name": "data", "nameLocation": "3763:4:8", "nodeType": "VariableDeclaration", - "scope": 1581, + "scope": 1578, "src": "3750:17:8", "stateVariable": false, "storageLocation": "memory", @@ -893,7 +893,7 @@ "typeString": "bytes" }, "typeName": { - "id": 1567, + "id": 1564, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "3750:5:8", @@ -908,17 +908,17 @@ "src": "3733:35:8" }, "returnParameters": { - "id": 1572, + "id": 1569, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1571, + "id": 1568, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 1581, + "scope": 1578, "src": "3787:12:8", "stateVariable": false, "storageLocation": "memory", @@ -927,7 +927,7 @@ "typeString": "bytes" }, "typeName": { - "id": 1570, + "id": 1567, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "3787:5:8", @@ -941,7 +941,7 @@ ], "src": "3786:14:8" }, - "scope": 1841, + "scope": 1838, "src": "3712:185:8", "stateMutability": "nonpayable", "virtual": false, @@ -949,7 +949,7 @@ }, { "body": { - "id": 1600, + "id": 1597, "nodeType": "Block", "src": "4266:76:8", "statements": [ @@ -957,11 +957,11 @@ "expression": { "arguments": [ { - "id": 1594, + "id": 1591, "name": "target", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1584, + "referencedDeclaration": 1581, "src": "4305:6:8", "typeDescriptions": { "typeIdentifier": "t_address", @@ -969,11 +969,11 @@ } }, { - "id": 1595, + "id": 1592, "name": "data", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1586, + "referencedDeclaration": 1583, "src": "4313:4:8", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -982,7 +982,7 @@ }, { "hexValue": "30", - "id": 1596, + "id": 1593, "isConstant": false, "isLValue": false, "isPure": true, @@ -997,11 +997,11 @@ "value": "0" }, { - "id": 1597, + "id": 1594, "name": "errorMessage", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1588, + "referencedDeclaration": 1585, "src": "4322:12:8", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", @@ -1028,21 +1028,21 @@ "typeString": "string memory" } ], - "id": 1593, + "id": 1590, "name": "functionCallWithValue", "nodeType": "Identifier", "overloadedDeclarations": [ - 1621, - 1665 + 1618, + 1662 ], - "referencedDeclaration": 1665, + "referencedDeclaration": 1662, "src": "4283:21:8", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_bytes_memory_ptr_$_t_uint256_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", "typeString": "function (address,bytes memory,uint256,string memory) returns (bytes memory)" } }, - "id": 1598, + "id": 1595, "isConstant": false, "isLValue": false, "isPure": false, @@ -1058,20 +1058,20 @@ "typeString": "bytes memory" } }, - "functionReturnParameters": 1592, - "id": 1599, + "functionReturnParameters": 1589, + "id": 1596, "nodeType": "Return", "src": "4276:59:8" } ] }, "documentation": { - "id": 1582, + "id": 1579, "nodeType": "StructuredDocumentation", "src": "3903:211:8", "text": " @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`], but with\n `errorMessage` as a fallback revert reason when `target` reverts.\n _Available since v3.1._" }, - "id": 1601, + "id": 1598, "implemented": true, "kind": "function", "modifiers": [], @@ -1079,17 +1079,17 @@ "nameLocation": "4128:12:8", "nodeType": "FunctionDefinition", "parameters": { - "id": 1589, + "id": 1586, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1584, + "id": 1581, "mutability": "mutable", "name": "target", "nameLocation": "4158:6:8", "nodeType": "VariableDeclaration", - "scope": 1601, + "scope": 1598, "src": "4150:14:8", "stateVariable": false, "storageLocation": "default", @@ -1098,7 +1098,7 @@ "typeString": "address" }, "typeName": { - "id": 1583, + "id": 1580, "name": "address", "nodeType": "ElementaryTypeName", "src": "4150:7:8", @@ -1112,12 +1112,12 @@ }, { "constant": false, - "id": 1586, + "id": 1583, "mutability": "mutable", "name": "data", "nameLocation": "4187:4:8", "nodeType": "VariableDeclaration", - "scope": 1601, + "scope": 1598, "src": "4174:17:8", "stateVariable": false, "storageLocation": "memory", @@ -1126,7 +1126,7 @@ "typeString": "bytes" }, "typeName": { - "id": 1585, + "id": 1582, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "4174:5:8", @@ -1139,12 +1139,12 @@ }, { "constant": false, - "id": 1588, + "id": 1585, "mutability": "mutable", "name": "errorMessage", "nameLocation": "4215:12:8", "nodeType": "VariableDeclaration", - "scope": 1601, + "scope": 1598, "src": "4201:26:8", "stateVariable": false, "storageLocation": "memory", @@ -1153,7 +1153,7 @@ "typeString": "string" }, "typeName": { - "id": 1587, + "id": 1584, "name": "string", "nodeType": "ElementaryTypeName", "src": "4201:6:8", @@ -1168,17 +1168,17 @@ "src": "4140:93:8" }, "returnParameters": { - "id": 1592, + "id": 1589, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1591, + "id": 1588, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 1601, + "scope": 1598, "src": "4252:12:8", "stateVariable": false, "storageLocation": "memory", @@ -1187,7 +1187,7 @@ "typeString": "bytes" }, "typeName": { - "id": 1590, + "id": 1587, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "4252:5:8", @@ -1201,7 +1201,7 @@ ], "src": "4251:14:8" }, - "scope": 1841, + "scope": 1838, "src": "4119:223:8", "stateMutability": "nonpayable", "virtual": false, @@ -1209,7 +1209,7 @@ }, { "body": { - "id": 1620, + "id": 1617, "nodeType": "Block", "src": "4817:111:8", "statements": [ @@ -1217,11 +1217,11 @@ "expression": { "arguments": [ { - "id": 1614, + "id": 1611, "name": "target", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1604, + "referencedDeclaration": 1601, "src": "4856:6:8", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1229,11 +1229,11 @@ } }, { - "id": 1615, + "id": 1612, "name": "data", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1606, + "referencedDeclaration": 1603, "src": "4864:4:8", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -1241,11 +1241,11 @@ } }, { - "id": 1616, + "id": 1613, "name": "value", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1608, + "referencedDeclaration": 1605, "src": "4870:5:8", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1254,7 +1254,7 @@ }, { "hexValue": "416464726573733a206c6f772d6c6576656c2063616c6c20776974682076616c7565206661696c6564", - "id": 1617, + "id": 1614, "isConstant": false, "isLValue": false, "isPure": true, @@ -1288,21 +1288,21 @@ "typeString": "literal_string \"Address: low-level call with value failed\"" } ], - "id": 1613, + "id": 1610, "name": "functionCallWithValue", "nodeType": "Identifier", "overloadedDeclarations": [ - 1621, - 1665 + 1618, + 1662 ], - "referencedDeclaration": 1665, + "referencedDeclaration": 1662, "src": "4834:21:8", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_bytes_memory_ptr_$_t_uint256_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", "typeString": "function (address,bytes memory,uint256,string memory) returns (bytes memory)" } }, - "id": 1618, + "id": 1615, "isConstant": false, "isLValue": false, "isPure": false, @@ -1318,20 +1318,20 @@ "typeString": "bytes memory" } }, - "functionReturnParameters": 1612, - "id": 1619, + "functionReturnParameters": 1609, + "id": 1616, "nodeType": "Return", "src": "4827:94:8" } ] }, "documentation": { - "id": 1602, + "id": 1599, "nodeType": "StructuredDocumentation", "src": "4348:351:8", "text": " @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],\n but also transferring `value` wei to `target`.\n Requirements:\n - the calling contract must have an ETH balance of at least `value`.\n - the called Solidity function must be `payable`.\n _Available since v3.1._" }, - "id": 1621, + "id": 1618, "implemented": true, "kind": "function", "modifiers": [], @@ -1339,17 +1339,17 @@ "nameLocation": "4713:21:8", "nodeType": "FunctionDefinition", "parameters": { - "id": 1609, + "id": 1606, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1604, + "id": 1601, "mutability": "mutable", "name": "target", "nameLocation": "4743:6:8", "nodeType": "VariableDeclaration", - "scope": 1621, + "scope": 1618, "src": "4735:14:8", "stateVariable": false, "storageLocation": "default", @@ -1358,7 +1358,7 @@ "typeString": "address" }, "typeName": { - "id": 1603, + "id": 1600, "name": "address", "nodeType": "ElementaryTypeName", "src": "4735:7:8", @@ -1372,12 +1372,12 @@ }, { "constant": false, - "id": 1606, + "id": 1603, "mutability": "mutable", "name": "data", "nameLocation": "4764:4:8", "nodeType": "VariableDeclaration", - "scope": 1621, + "scope": 1618, "src": "4751:17:8", "stateVariable": false, "storageLocation": "memory", @@ -1386,7 +1386,7 @@ "typeString": "bytes" }, "typeName": { - "id": 1605, + "id": 1602, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "4751:5:8", @@ -1399,12 +1399,12 @@ }, { "constant": false, - "id": 1608, + "id": 1605, "mutability": "mutable", "name": "value", "nameLocation": "4778:5:8", "nodeType": "VariableDeclaration", - "scope": 1621, + "scope": 1618, "src": "4770:13:8", "stateVariable": false, "storageLocation": "default", @@ -1413,7 +1413,7 @@ "typeString": "uint256" }, "typeName": { - "id": 1607, + "id": 1604, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4770:7:8", @@ -1428,17 +1428,17 @@ "src": "4734:50:8" }, "returnParameters": { - "id": 1612, + "id": 1609, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1611, + "id": 1608, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 1621, + "scope": 1618, "src": "4803:12:8", "stateVariable": false, "storageLocation": "memory", @@ -1447,7 +1447,7 @@ "typeString": "bytes" }, "typeName": { - "id": 1610, + "id": 1607, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "4803:5:8", @@ -1461,7 +1461,7 @@ ], "src": "4802:14:8" }, - "scope": 1841, + "scope": 1838, "src": "4704:224:8", "stateMutability": "nonpayable", "virtual": false, @@ -1469,7 +1469,7 @@ }, { "body": { - "id": 1664, + "id": 1661, "nodeType": "Block", "src": "5355:267:8", "statements": [ @@ -1481,7 +1481,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1642, + "id": 1639, "isConstant": false, "isLValue": false, "isPure": false, @@ -1490,14 +1490,14 @@ "expression": { "arguments": [ { - "id": 1638, + "id": 1635, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967268, "src": "5381:4:8", "typeDescriptions": { - "typeIdentifier": "t_contract$_AddressUpgradeable_$1841", + "typeIdentifier": "t_contract$_AddressUpgradeable_$1838", "typeString": "library AddressUpgradeable" } } @@ -1505,11 +1505,11 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_AddressUpgradeable_$1841", + "typeIdentifier": "t_contract$_AddressUpgradeable_$1838", "typeString": "library AddressUpgradeable" } ], - "id": 1637, + "id": 1634, "isConstant": false, "isLValue": false, "isPure": true, @@ -1521,14 +1521,14 @@ "typeString": "type(address)" }, "typeName": { - "id": 1636, + "id": 1633, "name": "address", "nodeType": "ElementaryTypeName", "src": "5373:7:8", "typeDescriptions": {} } }, - "id": 1639, + "id": 1636, "isConstant": false, "isLValue": false, "isPure": false, @@ -1544,7 +1544,7 @@ "typeString": "address" } }, - "id": 1640, + "id": 1637, "isConstant": false, "isLValue": false, "isPure": false, @@ -1561,11 +1561,11 @@ "nodeType": "BinaryOperation", "operator": ">=", "rightExpression": { - "id": 1641, + "id": 1638, "name": "value", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1628, + "referencedDeclaration": 1625, "src": "5398:5:8", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1580,7 +1580,7 @@ }, { "hexValue": "416464726573733a20696e73756666696369656e742062616c616e636520666f722063616c6c", - "id": 1643, + "id": 1640, "isConstant": false, "isLValue": false, "isPure": true, @@ -1606,7 +1606,7 @@ "typeString": "literal_string \"Address: insufficient balance for call\"" } ], - "id": 1635, + "id": 1632, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -1620,7 +1620,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 1644, + "id": 1641, "isConstant": false, "isLValue": false, "isPure": false, @@ -1636,24 +1636,24 @@ "typeString": "tuple()" } }, - "id": 1645, + "id": 1642, "nodeType": "ExpressionStatement", "src": "5365:81:8" }, { "assignments": [ - 1647, - 1649 + 1644, + 1646 ], "declarations": [ { "constant": false, - "id": 1647, + "id": 1644, "mutability": "mutable", "name": "success", "nameLocation": "5462:7:8", "nodeType": "VariableDeclaration", - "scope": 1664, + "scope": 1661, "src": "5457:12:8", "stateVariable": false, "storageLocation": "default", @@ -1662,7 +1662,7 @@ "typeString": "bool" }, "typeName": { - "id": 1646, + "id": 1643, "name": "bool", "nodeType": "ElementaryTypeName", "src": "5457:4:8", @@ -1675,12 +1675,12 @@ }, { "constant": false, - "id": 1649, + "id": 1646, "mutability": "mutable", "name": "returndata", "nameLocation": "5484:10:8", "nodeType": "VariableDeclaration", - "scope": 1664, + "scope": 1661, "src": "5471:23:8", "stateVariable": false, "storageLocation": "memory", @@ -1689,7 +1689,7 @@ "typeString": "bytes" }, "typeName": { - "id": 1648, + "id": 1645, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "5471:5:8", @@ -1701,15 +1701,15 @@ "visibility": "internal" } ], - "id": 1656, + "id": 1653, "initialValue": { "arguments": [ { - "id": 1654, + "id": 1651, "name": "data", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1626, + "referencedDeclaration": 1623, "src": "5524:4:8", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -1732,18 +1732,18 @@ } ], "expression": { - "id": 1650, + "id": 1647, "name": "target", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1624, + "referencedDeclaration": 1621, "src": "5498:6:8", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 1651, + "id": 1648, "isConstant": false, "isLValue": false, "isPure": false, @@ -1757,7 +1757,7 @@ "typeString": "function (bytes memory) payable returns (bool,bytes memory)" } }, - "id": 1653, + "id": 1650, "isConstant": false, "isLValue": false, "isPure": false, @@ -1768,11 +1768,11 @@ "nodeType": "FunctionCallOptions", "options": [ { - "id": 1652, + "id": 1649, "name": "value", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1628, + "referencedDeclaration": 1625, "src": "5517:5:8", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1786,7 +1786,7 @@ "typeString": "function (bytes memory) payable returns (bool,bytes memory)" } }, - "id": 1655, + "id": 1652, "isConstant": false, "isLValue": false, "isPure": false, @@ -1809,11 +1809,11 @@ "expression": { "arguments": [ { - "id": 1658, + "id": 1655, "name": "target", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1624, + "referencedDeclaration": 1621, "src": "5573:6:8", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1821,11 +1821,11 @@ } }, { - "id": 1659, + "id": 1656, "name": "success", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1647, + "referencedDeclaration": 1644, "src": "5581:7:8", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -1833,11 +1833,11 @@ } }, { - "id": 1660, + "id": 1657, "name": "returndata", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1649, + "referencedDeclaration": 1646, "src": "5590:10:8", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -1845,11 +1845,11 @@ } }, { - "id": 1661, + "id": 1658, "name": "errorMessage", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1630, + "referencedDeclaration": 1627, "src": "5602:12:8", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", @@ -1876,18 +1876,18 @@ "typeString": "string memory" } ], - "id": 1657, + "id": 1654, "name": "verifyCallResultFromTarget", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1796, + "referencedDeclaration": 1793, "src": "5546:26:8", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$_t_bool_$_t_bytes_memory_ptr_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", "typeString": "function (address,bool,bytes memory,string memory) view returns (bytes memory)" } }, - "id": 1662, + "id": 1659, "isConstant": false, "isLValue": false, "isPure": false, @@ -1903,20 +1903,20 @@ "typeString": "bytes memory" } }, - "functionReturnParameters": 1634, - "id": 1663, + "functionReturnParameters": 1631, + "id": 1660, "nodeType": "Return", "src": "5539:76:8" } ] }, "documentation": { - "id": 1622, + "id": 1619, "nodeType": "StructuredDocumentation", "src": "4934:237:8", "text": " @dev Same as {xref-Address-functionCallWithValue-address-bytes-uint256-}[`functionCallWithValue`], but\n with `errorMessage` as a fallback revert reason when `target` reverts.\n _Available since v3.1._" }, - "id": 1665, + "id": 1662, "implemented": true, "kind": "function", "modifiers": [], @@ -1924,17 +1924,17 @@ "nameLocation": "5185:21:8", "nodeType": "FunctionDefinition", "parameters": { - "id": 1631, + "id": 1628, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1624, + "id": 1621, "mutability": "mutable", "name": "target", "nameLocation": "5224:6:8", "nodeType": "VariableDeclaration", - "scope": 1665, + "scope": 1662, "src": "5216:14:8", "stateVariable": false, "storageLocation": "default", @@ -1943,7 +1943,7 @@ "typeString": "address" }, "typeName": { - "id": 1623, + "id": 1620, "name": "address", "nodeType": "ElementaryTypeName", "src": "5216:7:8", @@ -1957,12 +1957,12 @@ }, { "constant": false, - "id": 1626, + "id": 1623, "mutability": "mutable", "name": "data", "nameLocation": "5253:4:8", "nodeType": "VariableDeclaration", - "scope": 1665, + "scope": 1662, "src": "5240:17:8", "stateVariable": false, "storageLocation": "memory", @@ -1971,7 +1971,7 @@ "typeString": "bytes" }, "typeName": { - "id": 1625, + "id": 1622, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "5240:5:8", @@ -1984,12 +1984,12 @@ }, { "constant": false, - "id": 1628, + "id": 1625, "mutability": "mutable", "name": "value", "nameLocation": "5275:5:8", "nodeType": "VariableDeclaration", - "scope": 1665, + "scope": 1662, "src": "5267:13:8", "stateVariable": false, "storageLocation": "default", @@ -1998,7 +1998,7 @@ "typeString": "uint256" }, "typeName": { - "id": 1627, + "id": 1624, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "5267:7:8", @@ -2011,12 +2011,12 @@ }, { "constant": false, - "id": 1630, + "id": 1627, "mutability": "mutable", "name": "errorMessage", "nameLocation": "5304:12:8", "nodeType": "VariableDeclaration", - "scope": 1665, + "scope": 1662, "src": "5290:26:8", "stateVariable": false, "storageLocation": "memory", @@ -2025,7 +2025,7 @@ "typeString": "string" }, "typeName": { - "id": 1629, + "id": 1626, "name": "string", "nodeType": "ElementaryTypeName", "src": "5290:6:8", @@ -2040,17 +2040,17 @@ "src": "5206:116:8" }, "returnParameters": { - "id": 1634, + "id": 1631, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1633, + "id": 1630, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 1665, + "scope": 1662, "src": "5341:12:8", "stateVariable": false, "storageLocation": "memory", @@ -2059,7 +2059,7 @@ "typeString": "bytes" }, "typeName": { - "id": 1632, + "id": 1629, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "5341:5:8", @@ -2073,7 +2073,7 @@ ], "src": "5340:14:8" }, - "scope": 1841, + "scope": 1838, "src": "5176:446:8", "stateMutability": "nonpayable", "virtual": false, @@ -2081,7 +2081,7 @@ }, { "body": { - "id": 1681, + "id": 1678, "nodeType": "Block", "src": "5899:97:8", "statements": [ @@ -2089,11 +2089,11 @@ "expression": { "arguments": [ { - "id": 1676, + "id": 1673, "name": "target", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1668, + "referencedDeclaration": 1665, "src": "5935:6:8", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2101,11 +2101,11 @@ } }, { - "id": 1677, + "id": 1674, "name": "data", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1670, + "referencedDeclaration": 1667, "src": "5943:4:8", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -2114,7 +2114,7 @@ }, { "hexValue": "416464726573733a206c6f772d6c6576656c207374617469632063616c6c206661696c6564", - "id": 1678, + "id": 1675, "isConstant": false, "isLValue": false, "isPure": true, @@ -2144,21 +2144,21 @@ "typeString": "literal_string \"Address: low-level static call failed\"" } ], - "id": 1675, + "id": 1672, "name": "functionStaticCall", "nodeType": "Identifier", "overloadedDeclarations": [ - 1682, - 1711 + 1679, + 1708 ], - "referencedDeclaration": 1711, + "referencedDeclaration": 1708, "src": "5916:18:8", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$_t_bytes_memory_ptr_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", "typeString": "function (address,bytes memory,string memory) view returns (bytes memory)" } }, - "id": 1679, + "id": 1676, "isConstant": false, "isLValue": false, "isPure": false, @@ -2174,20 +2174,20 @@ "typeString": "bytes memory" } }, - "functionReturnParameters": 1674, - "id": 1680, + "functionReturnParameters": 1671, + "id": 1677, "nodeType": "Return", "src": "5909:80:8" } ] }, "documentation": { - "id": 1666, + "id": 1663, "nodeType": "StructuredDocumentation", "src": "5628:166:8", "text": " @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],\n but performing a static call.\n _Available since v3.3._" }, - "id": 1682, + "id": 1679, "implemented": true, "kind": "function", "modifiers": [], @@ -2195,17 +2195,17 @@ "nameLocation": "5808:18:8", "nodeType": "FunctionDefinition", "parameters": { - "id": 1671, + "id": 1668, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1668, + "id": 1665, "mutability": "mutable", "name": "target", "nameLocation": "5835:6:8", "nodeType": "VariableDeclaration", - "scope": 1682, + "scope": 1679, "src": "5827:14:8", "stateVariable": false, "storageLocation": "default", @@ -2214,7 +2214,7 @@ "typeString": "address" }, "typeName": { - "id": 1667, + "id": 1664, "name": "address", "nodeType": "ElementaryTypeName", "src": "5827:7:8", @@ -2228,12 +2228,12 @@ }, { "constant": false, - "id": 1670, + "id": 1667, "mutability": "mutable", "name": "data", "nameLocation": "5856:4:8", "nodeType": "VariableDeclaration", - "scope": 1682, + "scope": 1679, "src": "5843:17:8", "stateVariable": false, "storageLocation": "memory", @@ -2242,7 +2242,7 @@ "typeString": "bytes" }, "typeName": { - "id": 1669, + "id": 1666, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "5843:5:8", @@ -2257,17 +2257,17 @@ "src": "5826:35:8" }, "returnParameters": { - "id": 1674, + "id": 1671, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1673, + "id": 1670, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 1682, + "scope": 1679, "src": "5885:12:8", "stateVariable": false, "storageLocation": "memory", @@ -2276,7 +2276,7 @@ "typeString": "bytes" }, "typeName": { - "id": 1672, + "id": 1669, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "5885:5:8", @@ -2290,7 +2290,7 @@ ], "src": "5884:14:8" }, - "scope": 1841, + "scope": 1838, "src": "5799:197:8", "stateMutability": "view", "virtual": false, @@ -2298,24 +2298,24 @@ }, { "body": { - "id": 1710, + "id": 1707, "nodeType": "Block", "src": "6338:168:8", "statements": [ { "assignments": [ - 1695, - 1697 + 1692, + 1694 ], "declarations": [ { "constant": false, - "id": 1695, + "id": 1692, "mutability": "mutable", "name": "success", "nameLocation": "6354:7:8", "nodeType": "VariableDeclaration", - "scope": 1710, + "scope": 1707, "src": "6349:12:8", "stateVariable": false, "storageLocation": "default", @@ -2324,7 +2324,7 @@ "typeString": "bool" }, "typeName": { - "id": 1694, + "id": 1691, "name": "bool", "nodeType": "ElementaryTypeName", "src": "6349:4:8", @@ -2337,12 +2337,12 @@ }, { "constant": false, - "id": 1697, + "id": 1694, "mutability": "mutable", "name": "returndata", "nameLocation": "6376:10:8", "nodeType": "VariableDeclaration", - "scope": 1710, + "scope": 1707, "src": "6363:23:8", "stateVariable": false, "storageLocation": "memory", @@ -2351,7 +2351,7 @@ "typeString": "bytes" }, "typeName": { - "id": 1696, + "id": 1693, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "6363:5:8", @@ -2363,15 +2363,15 @@ "visibility": "internal" } ], - "id": 1702, + "id": 1699, "initialValue": { "arguments": [ { - "id": 1700, + "id": 1697, "name": "data", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1687, + "referencedDeclaration": 1684, "src": "6408:4:8", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -2387,18 +2387,18 @@ } ], "expression": { - "id": 1698, + "id": 1695, "name": "target", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1685, + "referencedDeclaration": 1682, "src": "6390:6:8", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 1699, + "id": 1696, "isConstant": false, "isLValue": false, "isPure": false, @@ -2412,7 +2412,7 @@ "typeString": "function (bytes memory) view returns (bool,bytes memory)" } }, - "id": 1701, + "id": 1698, "isConstant": false, "isLValue": false, "isPure": false, @@ -2435,11 +2435,11 @@ "expression": { "arguments": [ { - "id": 1704, + "id": 1701, "name": "target", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1685, + "referencedDeclaration": 1682, "src": "6457:6:8", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2447,11 +2447,11 @@ } }, { - "id": 1705, + "id": 1702, "name": "success", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1695, + "referencedDeclaration": 1692, "src": "6465:7:8", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -2459,11 +2459,11 @@ } }, { - "id": 1706, + "id": 1703, "name": "returndata", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1697, + "referencedDeclaration": 1694, "src": "6474:10:8", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -2471,11 +2471,11 @@ } }, { - "id": 1707, + "id": 1704, "name": "errorMessage", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1689, + "referencedDeclaration": 1686, "src": "6486:12:8", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", @@ -2502,18 +2502,18 @@ "typeString": "string memory" } ], - "id": 1703, + "id": 1700, "name": "verifyCallResultFromTarget", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1796, + "referencedDeclaration": 1793, "src": "6430:26:8", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$_t_bool_$_t_bytes_memory_ptr_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", "typeString": "function (address,bool,bytes memory,string memory) view returns (bytes memory)" } }, - "id": 1708, + "id": 1705, "isConstant": false, "isLValue": false, "isPure": false, @@ -2529,20 +2529,20 @@ "typeString": "bytes memory" } }, - "functionReturnParameters": 1693, - "id": 1709, + "functionReturnParameters": 1690, + "id": 1706, "nodeType": "Return", "src": "6423:76:8" } ] }, "documentation": { - "id": 1683, + "id": 1680, "nodeType": "StructuredDocumentation", "src": "6002:173:8", "text": " @dev Same as {xref-Address-functionCall-address-bytes-string-}[`functionCall`],\n but performing a static call.\n _Available since v3.3._" }, - "id": 1711, + "id": 1708, "implemented": true, "kind": "function", "modifiers": [], @@ -2550,17 +2550,17 @@ "nameLocation": "6189:18:8", "nodeType": "FunctionDefinition", "parameters": { - "id": 1690, + "id": 1687, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1685, + "id": 1682, "mutability": "mutable", "name": "target", "nameLocation": "6225:6:8", "nodeType": "VariableDeclaration", - "scope": 1711, + "scope": 1708, "src": "6217:14:8", "stateVariable": false, "storageLocation": "default", @@ -2569,7 +2569,7 @@ "typeString": "address" }, "typeName": { - "id": 1684, + "id": 1681, "name": "address", "nodeType": "ElementaryTypeName", "src": "6217:7:8", @@ -2583,12 +2583,12 @@ }, { "constant": false, - "id": 1687, + "id": 1684, "mutability": "mutable", "name": "data", "nameLocation": "6254:4:8", "nodeType": "VariableDeclaration", - "scope": 1711, + "scope": 1708, "src": "6241:17:8", "stateVariable": false, "storageLocation": "memory", @@ -2597,7 +2597,7 @@ "typeString": "bytes" }, "typeName": { - "id": 1686, + "id": 1683, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "6241:5:8", @@ -2610,12 +2610,12 @@ }, { "constant": false, - "id": 1689, + "id": 1686, "mutability": "mutable", "name": "errorMessage", "nameLocation": "6282:12:8", "nodeType": "VariableDeclaration", - "scope": 1711, + "scope": 1708, "src": "6268:26:8", "stateVariable": false, "storageLocation": "memory", @@ -2624,7 +2624,7 @@ "typeString": "string" }, "typeName": { - "id": 1688, + "id": 1685, "name": "string", "nodeType": "ElementaryTypeName", "src": "6268:6:8", @@ -2639,17 +2639,17 @@ "src": "6207:93:8" }, "returnParameters": { - "id": 1693, + "id": 1690, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1692, + "id": 1689, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 1711, + "scope": 1708, "src": "6324:12:8", "stateVariable": false, "storageLocation": "memory", @@ -2658,7 +2658,7 @@ "typeString": "bytes" }, "typeName": { - "id": 1691, + "id": 1688, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "6324:5:8", @@ -2672,7 +2672,7 @@ ], "src": "6323:14:8" }, - "scope": 1841, + "scope": 1838, "src": "6180:326:8", "stateMutability": "view", "virtual": false, @@ -2680,7 +2680,7 @@ }, { "body": { - "id": 1727, + "id": 1724, "nodeType": "Block", "src": "6782:101:8", "statements": [ @@ -2688,11 +2688,11 @@ "expression": { "arguments": [ { - "id": 1722, + "id": 1719, "name": "target", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1714, + "referencedDeclaration": 1711, "src": "6820:6:8", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2700,11 +2700,11 @@ } }, { - "id": 1723, + "id": 1720, "name": "data", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1716, + "referencedDeclaration": 1713, "src": "6828:4:8", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -2713,7 +2713,7 @@ }, { "hexValue": "416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564", - "id": 1724, + "id": 1721, "isConstant": false, "isLValue": false, "isPure": true, @@ -2743,21 +2743,21 @@ "typeString": "literal_string \"Address: low-level delegate call failed\"" } ], - "id": 1721, + "id": 1718, "name": "functionDelegateCall", "nodeType": "Identifier", "overloadedDeclarations": [ - 1728, - 1757 + 1725, + 1754 ], - "referencedDeclaration": 1757, + "referencedDeclaration": 1754, "src": "6799:20:8", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_bytes_memory_ptr_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", "typeString": "function (address,bytes memory,string memory) returns (bytes memory)" } }, - "id": 1725, + "id": 1722, "isConstant": false, "isLValue": false, "isPure": false, @@ -2773,20 +2773,20 @@ "typeString": "bytes memory" } }, - "functionReturnParameters": 1720, - "id": 1726, + "functionReturnParameters": 1717, + "id": 1723, "nodeType": "Return", "src": "6792:84:8" } ] }, "documentation": { - "id": 1712, + "id": 1709, "nodeType": "StructuredDocumentation", "src": "6512:168:8", "text": " @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],\n but performing a delegate call.\n _Available since v3.4._" }, - "id": 1728, + "id": 1725, "implemented": true, "kind": "function", "modifiers": [], @@ -2794,17 +2794,17 @@ "nameLocation": "6694:20:8", "nodeType": "FunctionDefinition", "parameters": { - "id": 1717, + "id": 1714, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1714, + "id": 1711, "mutability": "mutable", "name": "target", "nameLocation": "6723:6:8", "nodeType": "VariableDeclaration", - "scope": 1728, + "scope": 1725, "src": "6715:14:8", "stateVariable": false, "storageLocation": "default", @@ -2813,7 +2813,7 @@ "typeString": "address" }, "typeName": { - "id": 1713, + "id": 1710, "name": "address", "nodeType": "ElementaryTypeName", "src": "6715:7:8", @@ -2827,12 +2827,12 @@ }, { "constant": false, - "id": 1716, + "id": 1713, "mutability": "mutable", "name": "data", "nameLocation": "6744:4:8", "nodeType": "VariableDeclaration", - "scope": 1728, + "scope": 1725, "src": "6731:17:8", "stateVariable": false, "storageLocation": "memory", @@ -2841,7 +2841,7 @@ "typeString": "bytes" }, "typeName": { - "id": 1715, + "id": 1712, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "6731:5:8", @@ -2856,17 +2856,17 @@ "src": "6714:35:8" }, "returnParameters": { - "id": 1720, + "id": 1717, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1719, + "id": 1716, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 1728, + "scope": 1725, "src": "6768:12:8", "stateVariable": false, "storageLocation": "memory", @@ -2875,7 +2875,7 @@ "typeString": "bytes" }, "typeName": { - "id": 1718, + "id": 1715, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "6768:5:8", @@ -2889,7 +2889,7 @@ ], "src": "6767:14:8" }, - "scope": 1841, + "scope": 1838, "src": "6685:198:8", "stateMutability": "nonpayable", "virtual": false, @@ -2897,24 +2897,24 @@ }, { "body": { - "id": 1756, + "id": 1753, "nodeType": "Block", "src": "7224:170:8", "statements": [ { "assignments": [ - 1741, - 1743 + 1738, + 1740 ], "declarations": [ { "constant": false, - "id": 1741, + "id": 1738, "mutability": "mutable", "name": "success", "nameLocation": "7240:7:8", "nodeType": "VariableDeclaration", - "scope": 1756, + "scope": 1753, "src": "7235:12:8", "stateVariable": false, "storageLocation": "default", @@ -2923,7 +2923,7 @@ "typeString": "bool" }, "typeName": { - "id": 1740, + "id": 1737, "name": "bool", "nodeType": "ElementaryTypeName", "src": "7235:4:8", @@ -2936,12 +2936,12 @@ }, { "constant": false, - "id": 1743, + "id": 1740, "mutability": "mutable", "name": "returndata", "nameLocation": "7262:10:8", "nodeType": "VariableDeclaration", - "scope": 1756, + "scope": 1753, "src": "7249:23:8", "stateVariable": false, "storageLocation": "memory", @@ -2950,7 +2950,7 @@ "typeString": "bytes" }, "typeName": { - "id": 1742, + "id": 1739, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "7249:5:8", @@ -2962,15 +2962,15 @@ "visibility": "internal" } ], - "id": 1748, + "id": 1745, "initialValue": { "arguments": [ { - "id": 1746, + "id": 1743, "name": "data", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1733, + "referencedDeclaration": 1730, "src": "7296:4:8", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -2986,18 +2986,18 @@ } ], "expression": { - "id": 1744, + "id": 1741, "name": "target", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1731, + "referencedDeclaration": 1728, "src": "7276:6:8", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 1745, + "id": 1742, "isConstant": false, "isLValue": false, "isPure": false, @@ -3011,7 +3011,7 @@ "typeString": "function (bytes memory) returns (bool,bytes memory)" } }, - "id": 1747, + "id": 1744, "isConstant": false, "isLValue": false, "isPure": false, @@ -3034,11 +3034,11 @@ "expression": { "arguments": [ { - "id": 1750, + "id": 1747, "name": "target", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1731, + "referencedDeclaration": 1728, "src": "7345:6:8", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3046,11 +3046,11 @@ } }, { - "id": 1751, + "id": 1748, "name": "success", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1741, + "referencedDeclaration": 1738, "src": "7353:7:8", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -3058,11 +3058,11 @@ } }, { - "id": 1752, + "id": 1749, "name": "returndata", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1743, + "referencedDeclaration": 1740, "src": "7362:10:8", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -3070,11 +3070,11 @@ } }, { - "id": 1753, + "id": 1750, "name": "errorMessage", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1735, + "referencedDeclaration": 1732, "src": "7374:12:8", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", @@ -3101,18 +3101,18 @@ "typeString": "string memory" } ], - "id": 1749, + "id": 1746, "name": "verifyCallResultFromTarget", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1796, + "referencedDeclaration": 1793, "src": "7318:26:8", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$_t_bool_$_t_bytes_memory_ptr_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", "typeString": "function (address,bool,bytes memory,string memory) view returns (bytes memory)" } }, - "id": 1754, + "id": 1751, "isConstant": false, "isLValue": false, "isPure": false, @@ -3128,20 +3128,20 @@ "typeString": "bytes memory" } }, - "functionReturnParameters": 1739, - "id": 1755, + "functionReturnParameters": 1736, + "id": 1752, "nodeType": "Return", "src": "7311:76:8" } ] }, "documentation": { - "id": 1729, + "id": 1726, "nodeType": "StructuredDocumentation", "src": "6889:175:8", "text": " @dev Same as {xref-Address-functionCall-address-bytes-string-}[`functionCall`],\n but performing a delegate call.\n _Available since v3.4._" }, - "id": 1757, + "id": 1754, "implemented": true, "kind": "function", "modifiers": [], @@ -3149,17 +3149,17 @@ "nameLocation": "7078:20:8", "nodeType": "FunctionDefinition", "parameters": { - "id": 1736, + "id": 1733, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1731, + "id": 1728, "mutability": "mutable", "name": "target", "nameLocation": "7116:6:8", "nodeType": "VariableDeclaration", - "scope": 1757, + "scope": 1754, "src": "7108:14:8", "stateVariable": false, "storageLocation": "default", @@ -3168,7 +3168,7 @@ "typeString": "address" }, "typeName": { - "id": 1730, + "id": 1727, "name": "address", "nodeType": "ElementaryTypeName", "src": "7108:7:8", @@ -3182,12 +3182,12 @@ }, { "constant": false, - "id": 1733, + "id": 1730, "mutability": "mutable", "name": "data", "nameLocation": "7145:4:8", "nodeType": "VariableDeclaration", - "scope": 1757, + "scope": 1754, "src": "7132:17:8", "stateVariable": false, "storageLocation": "memory", @@ -3196,7 +3196,7 @@ "typeString": "bytes" }, "typeName": { - "id": 1732, + "id": 1729, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "7132:5:8", @@ -3209,12 +3209,12 @@ }, { "constant": false, - "id": 1735, + "id": 1732, "mutability": "mutable", "name": "errorMessage", "nameLocation": "7173:12:8", "nodeType": "VariableDeclaration", - "scope": 1757, + "scope": 1754, "src": "7159:26:8", "stateVariable": false, "storageLocation": "memory", @@ -3223,7 +3223,7 @@ "typeString": "string" }, "typeName": { - "id": 1734, + "id": 1731, "name": "string", "nodeType": "ElementaryTypeName", "src": "7159:6:8", @@ -3238,17 +3238,17 @@ "src": "7098:93:8" }, "returnParameters": { - "id": 1739, + "id": 1736, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1738, + "id": 1735, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 1757, + "scope": 1754, "src": "7210:12:8", "stateVariable": false, "storageLocation": "memory", @@ -3257,7 +3257,7 @@ "typeString": "bytes" }, "typeName": { - "id": 1737, + "id": 1734, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "7210:5:8", @@ -3271,7 +3271,7 @@ ], "src": "7209:14:8" }, - "scope": 1841, + "scope": 1838, "src": "7069:325:8", "stateMutability": "nonpayable", "virtual": false, @@ -3279,17 +3279,17 @@ }, { "body": { - "id": 1795, + "id": 1792, "nodeType": "Block", "src": "7876:434:8", "statements": [ { "condition": { - "id": 1771, + "id": 1768, "name": "success", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1762, + "referencedDeclaration": 1759, "src": "7890:7:8", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -3297,7 +3297,7 @@ } }, "falseBody": { - "id": 1793, + "id": 1790, "nodeType": "Block", "src": "8246:58:8", "statements": [ @@ -3305,11 +3305,11 @@ "expression": { "arguments": [ { - "id": 1789, + "id": 1786, "name": "returndata", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1764, + "referencedDeclaration": 1761, "src": "8268:10:8", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -3317,11 +3317,11 @@ } }, { - "id": 1790, + "id": 1787, "name": "errorMessage", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1766, + "referencedDeclaration": 1763, "src": "8280:12:8", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", @@ -3340,18 +3340,18 @@ "typeString": "string memory" } ], - "id": 1788, + "id": 1785, "name": "_revert", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1840, + "referencedDeclaration": 1837, "src": "8260:7:8", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bytes memory,string memory) pure" } }, - "id": 1791, + "id": 1788, "isConstant": false, "isLValue": false, "isPure": false, @@ -3367,17 +3367,17 @@ "typeString": "tuple()" } }, - "id": 1792, + "id": 1789, "nodeType": "ExpressionStatement", "src": "8260:33:8" } ] }, - "id": 1794, + "id": 1791, "nodeType": "IfStatement", "src": "7886:418:8", "trueBody": { - "id": 1787, + "id": 1784, "nodeType": "Block", "src": "7899:341:8", "statements": [ @@ -3387,25 +3387,25 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1775, + "id": 1772, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 1772, + "id": 1769, "name": "returndata", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1764, + "referencedDeclaration": 1761, "src": "7917:10:8", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "id": 1773, + "id": 1770, "isConstant": false, "isLValue": false, "isPure": false, @@ -3423,7 +3423,7 @@ "operator": "==", "rightExpression": { "hexValue": "30", - "id": 1774, + "id": 1771, "isConstant": false, "isLValue": false, "isPure": true, @@ -3443,11 +3443,11 @@ "typeString": "bool" } }, - "id": 1784, + "id": 1781, "nodeType": "IfStatement", "src": "7913:286:8", "trueBody": { - "id": 1783, + "id": 1780, "nodeType": "Block", "src": "7941:258:8", "statements": [ @@ -3457,11 +3457,11 @@ { "arguments": [ { - "id": 1778, + "id": 1775, "name": "target", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1760, + "referencedDeclaration": 1757, "src": "8143:6:8", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3476,18 +3476,18 @@ "typeString": "address" } ], - "id": 1777, + "id": 1774, "name": "isContract", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1529, + "referencedDeclaration": 1526, "src": "8132:10:8", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", "typeString": "function (address) view returns (bool)" } }, - "id": 1779, + "id": 1776, "isConstant": false, "isLValue": false, "isPure": false, @@ -3505,7 +3505,7 @@ }, { "hexValue": "416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374", - "id": 1780, + "id": 1777, "isConstant": false, "isLValue": false, "isPure": true, @@ -3531,7 +3531,7 @@ "typeString": "literal_string \"Address: call to non-contract\"" } ], - "id": 1776, + "id": 1773, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -3545,7 +3545,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 1781, + "id": 1778, "isConstant": false, "isLValue": false, "isPure": false, @@ -3561,7 +3561,7 @@ "typeString": "tuple()" } }, - "id": 1782, + "id": 1779, "nodeType": "ExpressionStatement", "src": "8124:60:8" } @@ -3570,19 +3570,19 @@ }, { "expression": { - "id": 1785, + "id": 1782, "name": "returndata", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1764, + "referencedDeclaration": 1761, "src": "8219:10:8", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "functionReturnParameters": 1770, - "id": 1786, + "functionReturnParameters": 1767, + "id": 1783, "nodeType": "Return", "src": "8212:17:8" } @@ -3592,12 +3592,12 @@ ] }, "documentation": { - "id": 1758, + "id": 1755, "nodeType": "StructuredDocumentation", "src": "7400:277:8", "text": " @dev Tool to verify that a low level call to smart-contract was successful, and revert (either by bubbling\n the revert reason or using the provided one) in case of unsuccessful call or if target was not a contract.\n _Available since v4.8._" }, - "id": 1796, + "id": 1793, "implemented": true, "kind": "function", "modifiers": [], @@ -3605,17 +3605,17 @@ "nameLocation": "7691:26:8", "nodeType": "FunctionDefinition", "parameters": { - "id": 1767, + "id": 1764, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1760, + "id": 1757, "mutability": "mutable", "name": "target", "nameLocation": "7735:6:8", "nodeType": "VariableDeclaration", - "scope": 1796, + "scope": 1793, "src": "7727:14:8", "stateVariable": false, "storageLocation": "default", @@ -3624,7 +3624,7 @@ "typeString": "address" }, "typeName": { - "id": 1759, + "id": 1756, "name": "address", "nodeType": "ElementaryTypeName", "src": "7727:7:8", @@ -3638,12 +3638,12 @@ }, { "constant": false, - "id": 1762, + "id": 1759, "mutability": "mutable", "name": "success", "nameLocation": "7756:7:8", "nodeType": "VariableDeclaration", - "scope": 1796, + "scope": 1793, "src": "7751:12:8", "stateVariable": false, "storageLocation": "default", @@ -3652,7 +3652,7 @@ "typeString": "bool" }, "typeName": { - "id": 1761, + "id": 1758, "name": "bool", "nodeType": "ElementaryTypeName", "src": "7751:4:8", @@ -3665,12 +3665,12 @@ }, { "constant": false, - "id": 1764, + "id": 1761, "mutability": "mutable", "name": "returndata", "nameLocation": "7786:10:8", "nodeType": "VariableDeclaration", - "scope": 1796, + "scope": 1793, "src": "7773:23:8", "stateVariable": false, "storageLocation": "memory", @@ -3679,7 +3679,7 @@ "typeString": "bytes" }, "typeName": { - "id": 1763, + "id": 1760, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "7773:5:8", @@ -3692,12 +3692,12 @@ }, { "constant": false, - "id": 1766, + "id": 1763, "mutability": "mutable", "name": "errorMessage", "nameLocation": "7820:12:8", "nodeType": "VariableDeclaration", - "scope": 1796, + "scope": 1793, "src": "7806:26:8", "stateVariable": false, "storageLocation": "memory", @@ -3706,7 +3706,7 @@ "typeString": "string" }, "typeName": { - "id": 1765, + "id": 1762, "name": "string", "nodeType": "ElementaryTypeName", "src": "7806:6:8", @@ -3721,17 +3721,17 @@ "src": "7717:121:8" }, "returnParameters": { - "id": 1770, + "id": 1767, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1769, + "id": 1766, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 1796, + "scope": 1793, "src": "7862:12:8", "stateVariable": false, "storageLocation": "memory", @@ -3740,7 +3740,7 @@ "typeString": "bytes" }, "typeName": { - "id": 1768, + "id": 1765, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "7862:5:8", @@ -3754,7 +3754,7 @@ ], "src": "7861:14:8" }, - "scope": 1841, + "scope": 1838, "src": "7682:628:8", "stateMutability": "view", "virtual": false, @@ -3762,17 +3762,17 @@ }, { "body": { - "id": 1819, + "id": 1816, "nodeType": "Block", "src": "8691:135:8", "statements": [ { "condition": { - "id": 1808, + "id": 1805, "name": "success", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1799, + "referencedDeclaration": 1796, "src": "8705:7:8", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -3780,7 +3780,7 @@ } }, "falseBody": { - "id": 1817, + "id": 1814, "nodeType": "Block", "src": "8762:58:8", "statements": [ @@ -3788,11 +3788,11 @@ "expression": { "arguments": [ { - "id": 1813, + "id": 1810, "name": "returndata", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1801, + "referencedDeclaration": 1798, "src": "8784:10:8", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -3800,11 +3800,11 @@ } }, { - "id": 1814, + "id": 1811, "name": "errorMessage", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1803, + "referencedDeclaration": 1800, "src": "8796:12:8", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", @@ -3823,18 +3823,18 @@ "typeString": "string memory" } ], - "id": 1812, + "id": 1809, "name": "_revert", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1840, + "referencedDeclaration": 1837, "src": "8776:7:8", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bytes memory,string memory) pure" } }, - "id": 1815, + "id": 1812, "isConstant": false, "isLValue": false, "isPure": false, @@ -3850,35 +3850,35 @@ "typeString": "tuple()" } }, - "id": 1816, + "id": 1813, "nodeType": "ExpressionStatement", "src": "8776:33:8" } ] }, - "id": 1818, + "id": 1815, "nodeType": "IfStatement", "src": "8701:119:8", "trueBody": { - "id": 1811, + "id": 1808, "nodeType": "Block", "src": "8714:42:8", "statements": [ { "expression": { - "id": 1809, + "id": 1806, "name": "returndata", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1801, + "referencedDeclaration": 1798, "src": "8735:10:8", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "functionReturnParameters": 1807, - "id": 1810, + "functionReturnParameters": 1804, + "id": 1807, "nodeType": "Return", "src": "8728:17:8" } @@ -3888,12 +3888,12 @@ ] }, "documentation": { - "id": 1797, + "id": 1794, "nodeType": "StructuredDocumentation", "src": "8316:210:8", "text": " @dev Tool to verify that a low level call was successful, and revert if it wasn't, either by bubbling the\n revert reason or using the provided one.\n _Available since v4.3._" }, - "id": 1820, + "id": 1817, "implemented": true, "kind": "function", "modifiers": [], @@ -3901,17 +3901,17 @@ "nameLocation": "8540:16:8", "nodeType": "FunctionDefinition", "parameters": { - "id": 1804, + "id": 1801, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1799, + "id": 1796, "mutability": "mutable", "name": "success", "nameLocation": "8571:7:8", "nodeType": "VariableDeclaration", - "scope": 1820, + "scope": 1817, "src": "8566:12:8", "stateVariable": false, "storageLocation": "default", @@ -3920,7 +3920,7 @@ "typeString": "bool" }, "typeName": { - "id": 1798, + "id": 1795, "name": "bool", "nodeType": "ElementaryTypeName", "src": "8566:4:8", @@ -3933,12 +3933,12 @@ }, { "constant": false, - "id": 1801, + "id": 1798, "mutability": "mutable", "name": "returndata", "nameLocation": "8601:10:8", "nodeType": "VariableDeclaration", - "scope": 1820, + "scope": 1817, "src": "8588:23:8", "stateVariable": false, "storageLocation": "memory", @@ -3947,7 +3947,7 @@ "typeString": "bytes" }, "typeName": { - "id": 1800, + "id": 1797, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "8588:5:8", @@ -3960,12 +3960,12 @@ }, { "constant": false, - "id": 1803, + "id": 1800, "mutability": "mutable", "name": "errorMessage", "nameLocation": "8635:12:8", "nodeType": "VariableDeclaration", - "scope": 1820, + "scope": 1817, "src": "8621:26:8", "stateVariable": false, "storageLocation": "memory", @@ -3974,7 +3974,7 @@ "typeString": "string" }, "typeName": { - "id": 1802, + "id": 1799, "name": "string", "nodeType": "ElementaryTypeName", "src": "8621:6:8", @@ -3989,17 +3989,17 @@ "src": "8556:97:8" }, "returnParameters": { - "id": 1807, + "id": 1804, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1806, + "id": 1803, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 1820, + "scope": 1817, "src": "8677:12:8", "stateVariable": false, "storageLocation": "memory", @@ -4008,7 +4008,7 @@ "typeString": "bytes" }, "typeName": { - "id": 1805, + "id": 1802, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "8677:5:8", @@ -4022,7 +4022,7 @@ ], "src": "8676:14:8" }, - "scope": 1841, + "scope": 1838, "src": "8531:295:8", "stateMutability": "pure", "virtual": false, @@ -4030,7 +4030,7 @@ }, { "body": { - "id": 1839, + "id": 1836, "nodeType": "Block", "src": "8915:457:8", "statements": [ @@ -4040,25 +4040,25 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1830, + "id": 1827, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 1827, + "id": 1824, "name": "returndata", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1822, + "referencedDeclaration": 1819, "src": "8991:10:8", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "id": 1828, + "id": 1825, "isConstant": false, "isLValue": false, "isPure": false, @@ -4076,7 +4076,7 @@ "operator": ">", "rightExpression": { "hexValue": "30", - "id": 1829, + "id": 1826, "isConstant": false, "isLValue": false, "isPure": true, @@ -4097,7 +4097,7 @@ } }, "falseBody": { - "id": 1837, + "id": 1834, "nodeType": "Block", "src": "9321:45:8", "statements": [ @@ -4105,11 +4105,11 @@ "expression": { "arguments": [ { - "id": 1834, + "id": 1831, "name": "errorMessage", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1824, + "referencedDeclaration": 1821, "src": "9342:12:8", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", @@ -4124,7 +4124,7 @@ "typeString": "string memory" } ], - "id": 1833, + "id": 1830, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -4138,7 +4138,7 @@ "typeString": "function (string memory) pure" } }, - "id": 1835, + "id": 1832, "isConstant": false, "isLValue": false, "isPure": false, @@ -4154,17 +4154,17 @@ "typeString": "tuple()" } }, - "id": 1836, + "id": 1833, "nodeType": "ExpressionStatement", "src": "9335:20:8" } ] }, - "id": 1838, + "id": 1835, "nodeType": "IfStatement", "src": "8987:379:8", "trueBody": { - "id": 1832, + "id": 1829, "nodeType": "Block", "src": "9014:301:8", "statements": [ @@ -4250,21 +4250,21 @@ "evmVersion": "paris", "externalReferences": [ { - "declaration": 1822, + "declaration": 1819, "isOffset": false, "isSlot": false, "src": "9219:10:8", "valueSize": 1 }, { - "declaration": 1822, + "declaration": 1819, "isOffset": false, "isSlot": false, "src": "9262:10:8", "valueSize": 1 } ], - "id": 1831, + "id": 1828, "nodeType": "InlineAssembly", "src": "9163:142:8" } @@ -4273,7 +4273,7 @@ } ] }, - "id": 1840, + "id": 1837, "implemented": true, "kind": "function", "modifiers": [], @@ -4281,17 +4281,17 @@ "nameLocation": "8841:7:8", "nodeType": "FunctionDefinition", "parameters": { - "id": 1825, + "id": 1822, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1822, + "id": 1819, "mutability": "mutable", "name": "returndata", "nameLocation": "8862:10:8", "nodeType": "VariableDeclaration", - "scope": 1840, + "scope": 1837, "src": "8849:23:8", "stateVariable": false, "storageLocation": "memory", @@ -4300,7 +4300,7 @@ "typeString": "bytes" }, "typeName": { - "id": 1821, + "id": 1818, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "8849:5:8", @@ -4313,12 +4313,12 @@ }, { "constant": false, - "id": 1824, + "id": 1821, "mutability": "mutable", "name": "errorMessage", "nameLocation": "8888:12:8", "nodeType": "VariableDeclaration", - "scope": 1840, + "scope": 1837, "src": "8874:26:8", "stateVariable": false, "storageLocation": "memory", @@ -4327,7 +4327,7 @@ "typeString": "string" }, "typeName": { - "id": 1823, + "id": 1820, "name": "string", "nodeType": "ElementaryTypeName", "src": "8874:6:8", @@ -4342,19 +4342,19 @@ "src": "8848:53:8" }, "returnParameters": { - "id": 1826, + "id": 1823, "nodeType": "ParameterList", "parameters": [], "src": "8915:0:8" }, - "scope": 1841, + "scope": 1838, "src": "8832:540:8", "stateMutability": "pure", "virtual": false, "visibility": "private" } ], - "scope": 1842, + "scope": 1839, "src": "194:9180:8", "usedErrors": [] } @@ -4365,15 +4365,15 @@ "absolutePath": "@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "exportedSymbols": { "AddressUpgradeable": [ - 1841 + 1838 ] }, - "id": 1842, + "id": 1839, "license": "MIT", "nodeType": "SourceUnit", "nodes": [ { - "id": 1513, + "id": 1510, "literals": [ "solidity", "^", @@ -4390,15 +4390,15 @@ "contractDependencies": [], "contractKind": "library", "documentation": { - "id": 1514, + "id": 1511, "nodeType": "StructuredDocumentation", "src": "126:67:8", "text": " @dev Collection of functions related to the address type" }, "fullyImplemented": true, - "id": 1841, + "id": 1838, "linearizedBaseContracts": [ - 1841 + 1838 ], "name": "AddressUpgradeable", "nameLocation": "202:18:8", @@ -4406,7 +4406,7 @@ "nodes": [ { "body": { - "id": 1528, + "id": 1525, "nodeType": "Block", "src": "1489:254:8", "statements": [ @@ -4416,7 +4416,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1526, + "id": 1523, "isConstant": false, "isLValue": false, "isPure": false, @@ -4424,18 +4424,18 @@ "leftExpression": { "expression": { "expression": { - "id": 1522, + "id": 1519, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1517, + "referencedDeclaration": 1514, "src": "1713:7:8", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 1523, + "id": 1520, "isConstant": false, "isLValue": false, "isPure": false, @@ -4449,7 +4449,7 @@ "typeString": "bytes memory" } }, - "id": 1524, + "id": 1521, "isConstant": false, "isLValue": false, "isPure": false, @@ -4467,7 +4467,7 @@ "operator": ">", "rightExpression": { "hexValue": "30", - "id": 1525, + "id": 1522, "isConstant": false, "isLValue": false, "isPure": true, @@ -4487,20 +4487,20 @@ "typeString": "bool" } }, - "functionReturnParameters": 1521, - "id": 1527, + "functionReturnParameters": 1518, + "id": 1524, "nodeType": "Return", "src": "1706:30:8" } ] }, "documentation": { - "id": 1515, + "id": 1512, "nodeType": "StructuredDocumentation", "src": "227:1191:8", "text": " @dev Returns true if `account` is a contract.\n [IMPORTANT]\n ====\n It is unsafe to assume that an address for which this function returns\n false is an externally-owned account (EOA) and not a contract.\n Among others, `isContract` will return false for the following\n types of addresses:\n - an externally-owned account\n - a contract in construction\n - an address where a contract will be created\n - an address where a contract lived, but was destroyed\n Furthermore, `isContract` will also return true if the target contract within\n the same transaction is already scheduled for destruction by `SELFDESTRUCT`,\n which only has an effect at the end of a transaction.\n ====\n [IMPORTANT]\n ====\n You shouldn't rely on `isContract` to protect against flash loan attacks!\n Preventing calls from contracts is highly discouraged. It breaks composability, breaks support for smart wallets\n like Gnosis Safe, and does not provide security since it can be circumvented by calling from a contract\n constructor.\n ====" }, - "id": 1529, + "id": 1526, "implemented": true, "kind": "function", "modifiers": [], @@ -4508,17 +4508,17 @@ "nameLocation": "1432:10:8", "nodeType": "FunctionDefinition", "parameters": { - "id": 1518, + "id": 1515, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1517, + "id": 1514, "mutability": "mutable", "name": "account", "nameLocation": "1451:7:8", "nodeType": "VariableDeclaration", - "scope": 1529, + "scope": 1526, "src": "1443:15:8", "stateVariable": false, "storageLocation": "default", @@ -4527,7 +4527,7 @@ "typeString": "address" }, "typeName": { - "id": 1516, + "id": 1513, "name": "address", "nodeType": "ElementaryTypeName", "src": "1443:7:8", @@ -4543,17 +4543,17 @@ "src": "1442:17:8" }, "returnParameters": { - "id": 1521, + "id": 1518, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1520, + "id": 1517, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 1529, + "scope": 1526, "src": "1483:4:8", "stateVariable": false, "storageLocation": "default", @@ -4562,7 +4562,7 @@ "typeString": "bool" }, "typeName": { - "id": 1519, + "id": 1516, "name": "bool", "nodeType": "ElementaryTypeName", "src": "1483:4:8", @@ -4576,7 +4576,7 @@ ], "src": "1482:6:8" }, - "scope": 1841, + "scope": 1838, "src": "1423:320:8", "stateMutability": "view", "virtual": false, @@ -4584,7 +4584,7 @@ }, { "body": { - "id": 1562, + "id": 1559, "nodeType": "Block", "src": "2729:241:8", "statements": [ @@ -4596,7 +4596,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1544, + "id": 1541, "isConstant": false, "isLValue": false, "isPure": false, @@ -4605,14 +4605,14 @@ "expression": { "arguments": [ { - "id": 1540, + "id": 1537, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967268, "src": "2755:4:8", "typeDescriptions": { - "typeIdentifier": "t_contract$_AddressUpgradeable_$1841", + "typeIdentifier": "t_contract$_AddressUpgradeable_$1838", "typeString": "library AddressUpgradeable" } } @@ -4620,11 +4620,11 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_AddressUpgradeable_$1841", + "typeIdentifier": "t_contract$_AddressUpgradeable_$1838", "typeString": "library AddressUpgradeable" } ], - "id": 1539, + "id": 1536, "isConstant": false, "isLValue": false, "isPure": true, @@ -4636,14 +4636,14 @@ "typeString": "type(address)" }, "typeName": { - "id": 1538, + "id": 1535, "name": "address", "nodeType": "ElementaryTypeName", "src": "2747:7:8", "typeDescriptions": {} } }, - "id": 1541, + "id": 1538, "isConstant": false, "isLValue": false, "isPure": false, @@ -4659,7 +4659,7 @@ "typeString": "address" } }, - "id": 1542, + "id": 1539, "isConstant": false, "isLValue": false, "isPure": false, @@ -4676,11 +4676,11 @@ "nodeType": "BinaryOperation", "operator": ">=", "rightExpression": { - "id": 1543, + "id": 1540, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1534, + "referencedDeclaration": 1531, "src": "2772:6:8", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -4695,7 +4695,7 @@ }, { "hexValue": "416464726573733a20696e73756666696369656e742062616c616e6365", - "id": 1545, + "id": 1542, "isConstant": false, "isLValue": false, "isPure": true, @@ -4721,7 +4721,7 @@ "typeString": "literal_string \"Address: insufficient balance\"" } ], - "id": 1537, + "id": 1534, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -4735,7 +4735,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 1546, + "id": 1543, "isConstant": false, "isLValue": false, "isPure": false, @@ -4751,24 +4751,24 @@ "typeString": "tuple()" } }, - "id": 1547, + "id": 1544, "nodeType": "ExpressionStatement", "src": "2739:73:8" }, { "assignments": [ - 1549, + 1546, null ], "declarations": [ { "constant": false, - "id": 1549, + "id": 1546, "mutability": "mutable", "name": "success", "nameLocation": "2829:7:8", "nodeType": "VariableDeclaration", - "scope": 1562, + "scope": 1559, "src": "2824:12:8", "stateVariable": false, "storageLocation": "default", @@ -4777,7 +4777,7 @@ "typeString": "bool" }, "typeName": { - "id": 1548, + "id": 1545, "name": "bool", "nodeType": "ElementaryTypeName", "src": "2824:4:8", @@ -4790,12 +4790,12 @@ }, null ], - "id": 1556, + "id": 1553, "initialValue": { "arguments": [ { "hexValue": "", - "id": 1554, + "id": 1551, "isConstant": false, "isLValue": false, "isPure": true, @@ -4825,18 +4825,18 @@ } ], "expression": { - "id": 1550, + "id": 1547, "name": "recipient", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1532, + "referencedDeclaration": 1529, "src": "2842:9:8", "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" } }, - "id": 1551, + "id": 1548, "isConstant": false, "isLValue": false, "isPure": false, @@ -4850,7 +4850,7 @@ "typeString": "function (bytes memory) payable returns (bool,bytes memory)" } }, - "id": 1553, + "id": 1550, "isConstant": false, "isLValue": false, "isPure": false, @@ -4861,11 +4861,11 @@ "nodeType": "FunctionCallOptions", "options": [ { - "id": 1552, + "id": 1549, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1534, + "referencedDeclaration": 1531, "src": "2864:6:8", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -4879,7 +4879,7 @@ "typeString": "function (bytes memory) payable returns (bool,bytes memory)" } }, - "id": 1555, + "id": 1552, "isConstant": false, "isLValue": false, "isPure": false, @@ -4902,11 +4902,11 @@ "expression": { "arguments": [ { - "id": 1558, + "id": 1555, "name": "success", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1549, + "referencedDeclaration": 1546, "src": "2893:7:8", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -4915,7 +4915,7 @@ }, { "hexValue": "416464726573733a20756e61626c6520746f2073656e642076616c75652c20726563697069656e74206d61792068617665207265766572746564", - "id": 1559, + "id": 1556, "isConstant": false, "isLValue": false, "isPure": true, @@ -4941,7 +4941,7 @@ "typeString": "literal_string \"Address: unable to send value, recipient may have reverted\"" } ], - "id": 1557, + "id": 1554, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -4955,7 +4955,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 1560, + "id": 1557, "isConstant": false, "isLValue": false, "isPure": false, @@ -4971,19 +4971,19 @@ "typeString": "tuple()" } }, - "id": 1561, + "id": 1558, "nodeType": "ExpressionStatement", "src": "2885:78:8" } ] }, "documentation": { - "id": 1530, + "id": 1527, "nodeType": "StructuredDocumentation", "src": "1749:904:8", "text": " @dev Replacement for Solidity's `transfer`: sends `amount` wei to\n `recipient`, forwarding all available gas and reverting on errors.\n https://eips.ethereum.org/EIPS/eip-1884[EIP1884] increases the gas cost\n of certain opcodes, possibly making contracts go over the 2300 gas limit\n imposed by `transfer`, making them unable to receive funds via\n `transfer`. {sendValue} removes this limitation.\n https://consensys.net/diligence/blog/2019/09/stop-using-soliditys-transfer-now/[Learn more].\n IMPORTANT: because control is transferred to `recipient`, care must be\n taken to not create reentrancy vulnerabilities. Consider using\n {ReentrancyGuard} or the\n https://solidity.readthedocs.io/en/v0.8.0/security-considerations.html#use-the-checks-effects-interactions-pattern[checks-effects-interactions pattern]." }, - "id": 1563, + "id": 1560, "implemented": true, "kind": "function", "modifiers": [], @@ -4991,17 +4991,17 @@ "nameLocation": "2667:9:8", "nodeType": "FunctionDefinition", "parameters": { - "id": 1535, + "id": 1532, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1532, + "id": 1529, "mutability": "mutable", "name": "recipient", "nameLocation": "2693:9:8", "nodeType": "VariableDeclaration", - "scope": 1563, + "scope": 1560, "src": "2677:25:8", "stateVariable": false, "storageLocation": "default", @@ -5010,7 +5010,7 @@ "typeString": "address payable" }, "typeName": { - "id": 1531, + "id": 1528, "name": "address", "nodeType": "ElementaryTypeName", "src": "2677:15:8", @@ -5024,12 +5024,12 @@ }, { "constant": false, - "id": 1534, + "id": 1531, "mutability": "mutable", "name": "amount", "nameLocation": "2712:6:8", "nodeType": "VariableDeclaration", - "scope": 1563, + "scope": 1560, "src": "2704:14:8", "stateVariable": false, "storageLocation": "default", @@ -5038,7 +5038,7 @@ "typeString": "uint256" }, "typeName": { - "id": 1533, + "id": 1530, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2704:7:8", @@ -5053,12 +5053,12 @@ "src": "2676:43:8" }, "returnParameters": { - "id": 1536, + "id": 1533, "nodeType": "ParameterList", "parameters": [], "src": "2729:0:8" }, - "scope": 1841, + "scope": 1838, "src": "2658:312:8", "stateMutability": "nonpayable", "virtual": false, @@ -5066,7 +5066,7 @@ }, { "body": { - "id": 1580, + "id": 1577, "nodeType": "Block", "src": "3801:96:8", "statements": [ @@ -5074,11 +5074,11 @@ "expression": { "arguments": [ { - "id": 1574, + "id": 1571, "name": "target", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1566, + "referencedDeclaration": 1563, "src": "3840:6:8", "typeDescriptions": { "typeIdentifier": "t_address", @@ -5086,11 +5086,11 @@ } }, { - "id": 1575, + "id": 1572, "name": "data", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1568, + "referencedDeclaration": 1565, "src": "3848:4:8", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -5099,7 +5099,7 @@ }, { "hexValue": "30", - "id": 1576, + "id": 1573, "isConstant": false, "isLValue": false, "isPure": true, @@ -5115,7 +5115,7 @@ }, { "hexValue": "416464726573733a206c6f772d6c6576656c2063616c6c206661696c6564", - "id": 1577, + "id": 1574, "isConstant": false, "isLValue": false, "isPure": true, @@ -5149,21 +5149,21 @@ "typeString": "literal_string \"Address: low-level call failed\"" } ], - "id": 1573, + "id": 1570, "name": "functionCallWithValue", "nodeType": "Identifier", "overloadedDeclarations": [ - 1621, - 1665 + 1618, + 1662 ], - "referencedDeclaration": 1665, + "referencedDeclaration": 1662, "src": "3818:21:8", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_bytes_memory_ptr_$_t_uint256_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", "typeString": "function (address,bytes memory,uint256,string memory) returns (bytes memory)" } }, - "id": 1578, + "id": 1575, "isConstant": false, "isLValue": false, "isPure": false, @@ -5179,20 +5179,20 @@ "typeString": "bytes memory" } }, - "functionReturnParameters": 1572, - "id": 1579, + "functionReturnParameters": 1569, + "id": 1576, "nodeType": "Return", "src": "3811:79:8" } ] }, "documentation": { - "id": 1564, + "id": 1561, "nodeType": "StructuredDocumentation", "src": "2976:731:8", "text": " @dev Performs a Solidity function call using a low level `call`. A\n plain `call` is an unsafe replacement for a function call: use this\n function instead.\n If `target` reverts with a revert reason, it is bubbled up by this\n function (like regular Solidity function calls).\n Returns the raw returned data. To convert to the expected return value,\n use https://solidity.readthedocs.io/en/latest/units-and-global-variables.html?highlight=abi.decode#abi-encoding-and-decoding-functions[`abi.decode`].\n Requirements:\n - `target` must be a contract.\n - calling `target` with `data` must not revert.\n _Available since v3.1._" }, - "id": 1581, + "id": 1578, "implemented": true, "kind": "function", "modifiers": [], @@ -5200,17 +5200,17 @@ "nameLocation": "3721:12:8", "nodeType": "FunctionDefinition", "parameters": { - "id": 1569, + "id": 1566, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1566, + "id": 1563, "mutability": "mutable", "name": "target", "nameLocation": "3742:6:8", "nodeType": "VariableDeclaration", - "scope": 1581, + "scope": 1578, "src": "3734:14:8", "stateVariable": false, "storageLocation": "default", @@ -5219,7 +5219,7 @@ "typeString": "address" }, "typeName": { - "id": 1565, + "id": 1562, "name": "address", "nodeType": "ElementaryTypeName", "src": "3734:7:8", @@ -5233,12 +5233,12 @@ }, { "constant": false, - "id": 1568, + "id": 1565, "mutability": "mutable", "name": "data", "nameLocation": "3763:4:8", "nodeType": "VariableDeclaration", - "scope": 1581, + "scope": 1578, "src": "3750:17:8", "stateVariable": false, "storageLocation": "memory", @@ -5247,7 +5247,7 @@ "typeString": "bytes" }, "typeName": { - "id": 1567, + "id": 1564, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "3750:5:8", @@ -5262,17 +5262,17 @@ "src": "3733:35:8" }, "returnParameters": { - "id": 1572, + "id": 1569, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1571, + "id": 1568, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 1581, + "scope": 1578, "src": "3787:12:8", "stateVariable": false, "storageLocation": "memory", @@ -5281,7 +5281,7 @@ "typeString": "bytes" }, "typeName": { - "id": 1570, + "id": 1567, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "3787:5:8", @@ -5295,7 +5295,7 @@ ], "src": "3786:14:8" }, - "scope": 1841, + "scope": 1838, "src": "3712:185:8", "stateMutability": "nonpayable", "virtual": false, @@ -5303,7 +5303,7 @@ }, { "body": { - "id": 1600, + "id": 1597, "nodeType": "Block", "src": "4266:76:8", "statements": [ @@ -5311,11 +5311,11 @@ "expression": { "arguments": [ { - "id": 1594, + "id": 1591, "name": "target", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1584, + "referencedDeclaration": 1581, "src": "4305:6:8", "typeDescriptions": { "typeIdentifier": "t_address", @@ -5323,11 +5323,11 @@ } }, { - "id": 1595, + "id": 1592, "name": "data", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1586, + "referencedDeclaration": 1583, "src": "4313:4:8", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -5336,7 +5336,7 @@ }, { "hexValue": "30", - "id": 1596, + "id": 1593, "isConstant": false, "isLValue": false, "isPure": true, @@ -5351,11 +5351,11 @@ "value": "0" }, { - "id": 1597, + "id": 1594, "name": "errorMessage", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1588, + "referencedDeclaration": 1585, "src": "4322:12:8", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", @@ -5382,21 +5382,21 @@ "typeString": "string memory" } ], - "id": 1593, + "id": 1590, "name": "functionCallWithValue", "nodeType": "Identifier", "overloadedDeclarations": [ - 1621, - 1665 + 1618, + 1662 ], - "referencedDeclaration": 1665, + "referencedDeclaration": 1662, "src": "4283:21:8", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_bytes_memory_ptr_$_t_uint256_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", "typeString": "function (address,bytes memory,uint256,string memory) returns (bytes memory)" } }, - "id": 1598, + "id": 1595, "isConstant": false, "isLValue": false, "isPure": false, @@ -5412,20 +5412,20 @@ "typeString": "bytes memory" } }, - "functionReturnParameters": 1592, - "id": 1599, + "functionReturnParameters": 1589, + "id": 1596, "nodeType": "Return", "src": "4276:59:8" } ] }, "documentation": { - "id": 1582, + "id": 1579, "nodeType": "StructuredDocumentation", "src": "3903:211:8", "text": " @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`], but with\n `errorMessage` as a fallback revert reason when `target` reverts.\n _Available since v3.1._" }, - "id": 1601, + "id": 1598, "implemented": true, "kind": "function", "modifiers": [], @@ -5433,17 +5433,17 @@ "nameLocation": "4128:12:8", "nodeType": "FunctionDefinition", "parameters": { - "id": 1589, + "id": 1586, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1584, + "id": 1581, "mutability": "mutable", "name": "target", "nameLocation": "4158:6:8", "nodeType": "VariableDeclaration", - "scope": 1601, + "scope": 1598, "src": "4150:14:8", "stateVariable": false, "storageLocation": "default", @@ -5452,7 +5452,7 @@ "typeString": "address" }, "typeName": { - "id": 1583, + "id": 1580, "name": "address", "nodeType": "ElementaryTypeName", "src": "4150:7:8", @@ -5466,12 +5466,12 @@ }, { "constant": false, - "id": 1586, + "id": 1583, "mutability": "mutable", "name": "data", "nameLocation": "4187:4:8", "nodeType": "VariableDeclaration", - "scope": 1601, + "scope": 1598, "src": "4174:17:8", "stateVariable": false, "storageLocation": "memory", @@ -5480,7 +5480,7 @@ "typeString": "bytes" }, "typeName": { - "id": 1585, + "id": 1582, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "4174:5:8", @@ -5493,12 +5493,12 @@ }, { "constant": false, - "id": 1588, + "id": 1585, "mutability": "mutable", "name": "errorMessage", "nameLocation": "4215:12:8", "nodeType": "VariableDeclaration", - "scope": 1601, + "scope": 1598, "src": "4201:26:8", "stateVariable": false, "storageLocation": "memory", @@ -5507,7 +5507,7 @@ "typeString": "string" }, "typeName": { - "id": 1587, + "id": 1584, "name": "string", "nodeType": "ElementaryTypeName", "src": "4201:6:8", @@ -5522,17 +5522,17 @@ "src": "4140:93:8" }, "returnParameters": { - "id": 1592, + "id": 1589, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1591, + "id": 1588, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 1601, + "scope": 1598, "src": "4252:12:8", "stateVariable": false, "storageLocation": "memory", @@ -5541,7 +5541,7 @@ "typeString": "bytes" }, "typeName": { - "id": 1590, + "id": 1587, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "4252:5:8", @@ -5555,7 +5555,7 @@ ], "src": "4251:14:8" }, - "scope": 1841, + "scope": 1838, "src": "4119:223:8", "stateMutability": "nonpayable", "virtual": false, @@ -5563,7 +5563,7 @@ }, { "body": { - "id": 1620, + "id": 1617, "nodeType": "Block", "src": "4817:111:8", "statements": [ @@ -5571,11 +5571,11 @@ "expression": { "arguments": [ { - "id": 1614, + "id": 1611, "name": "target", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1604, + "referencedDeclaration": 1601, "src": "4856:6:8", "typeDescriptions": { "typeIdentifier": "t_address", @@ -5583,11 +5583,11 @@ } }, { - "id": 1615, + "id": 1612, "name": "data", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1606, + "referencedDeclaration": 1603, "src": "4864:4:8", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -5595,11 +5595,11 @@ } }, { - "id": 1616, + "id": 1613, "name": "value", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1608, + "referencedDeclaration": 1605, "src": "4870:5:8", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5608,7 +5608,7 @@ }, { "hexValue": "416464726573733a206c6f772d6c6576656c2063616c6c20776974682076616c7565206661696c6564", - "id": 1617, + "id": 1614, "isConstant": false, "isLValue": false, "isPure": true, @@ -5642,21 +5642,21 @@ "typeString": "literal_string \"Address: low-level call with value failed\"" } ], - "id": 1613, + "id": 1610, "name": "functionCallWithValue", "nodeType": "Identifier", "overloadedDeclarations": [ - 1621, - 1665 + 1618, + 1662 ], - "referencedDeclaration": 1665, + "referencedDeclaration": 1662, "src": "4834:21:8", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_bytes_memory_ptr_$_t_uint256_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", "typeString": "function (address,bytes memory,uint256,string memory) returns (bytes memory)" } }, - "id": 1618, + "id": 1615, "isConstant": false, "isLValue": false, "isPure": false, @@ -5672,20 +5672,20 @@ "typeString": "bytes memory" } }, - "functionReturnParameters": 1612, - "id": 1619, + "functionReturnParameters": 1609, + "id": 1616, "nodeType": "Return", "src": "4827:94:8" } ] }, "documentation": { - "id": 1602, + "id": 1599, "nodeType": "StructuredDocumentation", "src": "4348:351:8", "text": " @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],\n but also transferring `value` wei to `target`.\n Requirements:\n - the calling contract must have an ETH balance of at least `value`.\n - the called Solidity function must be `payable`.\n _Available since v3.1._" }, - "id": 1621, + "id": 1618, "implemented": true, "kind": "function", "modifiers": [], @@ -5693,17 +5693,17 @@ "nameLocation": "4713:21:8", "nodeType": "FunctionDefinition", "parameters": { - "id": 1609, + "id": 1606, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1604, + "id": 1601, "mutability": "mutable", "name": "target", "nameLocation": "4743:6:8", "nodeType": "VariableDeclaration", - "scope": 1621, + "scope": 1618, "src": "4735:14:8", "stateVariable": false, "storageLocation": "default", @@ -5712,7 +5712,7 @@ "typeString": "address" }, "typeName": { - "id": 1603, + "id": 1600, "name": "address", "nodeType": "ElementaryTypeName", "src": "4735:7:8", @@ -5726,12 +5726,12 @@ }, { "constant": false, - "id": 1606, + "id": 1603, "mutability": "mutable", "name": "data", "nameLocation": "4764:4:8", "nodeType": "VariableDeclaration", - "scope": 1621, + "scope": 1618, "src": "4751:17:8", "stateVariable": false, "storageLocation": "memory", @@ -5740,7 +5740,7 @@ "typeString": "bytes" }, "typeName": { - "id": 1605, + "id": 1602, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "4751:5:8", @@ -5753,12 +5753,12 @@ }, { "constant": false, - "id": 1608, + "id": 1605, "mutability": "mutable", "name": "value", "nameLocation": "4778:5:8", "nodeType": "VariableDeclaration", - "scope": 1621, + "scope": 1618, "src": "4770:13:8", "stateVariable": false, "storageLocation": "default", @@ -5767,7 +5767,7 @@ "typeString": "uint256" }, "typeName": { - "id": 1607, + "id": 1604, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4770:7:8", @@ -5782,17 +5782,17 @@ "src": "4734:50:8" }, "returnParameters": { - "id": 1612, + "id": 1609, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1611, + "id": 1608, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 1621, + "scope": 1618, "src": "4803:12:8", "stateVariable": false, "storageLocation": "memory", @@ -5801,7 +5801,7 @@ "typeString": "bytes" }, "typeName": { - "id": 1610, + "id": 1607, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "4803:5:8", @@ -5815,7 +5815,7 @@ ], "src": "4802:14:8" }, - "scope": 1841, + "scope": 1838, "src": "4704:224:8", "stateMutability": "nonpayable", "virtual": false, @@ -5823,7 +5823,7 @@ }, { "body": { - "id": 1664, + "id": 1661, "nodeType": "Block", "src": "5355:267:8", "statements": [ @@ -5835,7 +5835,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1642, + "id": 1639, "isConstant": false, "isLValue": false, "isPure": false, @@ -5844,14 +5844,14 @@ "expression": { "arguments": [ { - "id": 1638, + "id": 1635, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967268, "src": "5381:4:8", "typeDescriptions": { - "typeIdentifier": "t_contract$_AddressUpgradeable_$1841", + "typeIdentifier": "t_contract$_AddressUpgradeable_$1838", "typeString": "library AddressUpgradeable" } } @@ -5859,11 +5859,11 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_AddressUpgradeable_$1841", + "typeIdentifier": "t_contract$_AddressUpgradeable_$1838", "typeString": "library AddressUpgradeable" } ], - "id": 1637, + "id": 1634, "isConstant": false, "isLValue": false, "isPure": true, @@ -5875,14 +5875,14 @@ "typeString": "type(address)" }, "typeName": { - "id": 1636, + "id": 1633, "name": "address", "nodeType": "ElementaryTypeName", "src": "5373:7:8", "typeDescriptions": {} } }, - "id": 1639, + "id": 1636, "isConstant": false, "isLValue": false, "isPure": false, @@ -5898,7 +5898,7 @@ "typeString": "address" } }, - "id": 1640, + "id": 1637, "isConstant": false, "isLValue": false, "isPure": false, @@ -5915,11 +5915,11 @@ "nodeType": "BinaryOperation", "operator": ">=", "rightExpression": { - "id": 1641, + "id": 1638, "name": "value", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1628, + "referencedDeclaration": 1625, "src": "5398:5:8", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5934,7 +5934,7 @@ }, { "hexValue": "416464726573733a20696e73756666696369656e742062616c616e636520666f722063616c6c", - "id": 1643, + "id": 1640, "isConstant": false, "isLValue": false, "isPure": true, @@ -5960,7 +5960,7 @@ "typeString": "literal_string \"Address: insufficient balance for call\"" } ], - "id": 1635, + "id": 1632, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -5974,7 +5974,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 1644, + "id": 1641, "isConstant": false, "isLValue": false, "isPure": false, @@ -5990,24 +5990,24 @@ "typeString": "tuple()" } }, - "id": 1645, + "id": 1642, "nodeType": "ExpressionStatement", "src": "5365:81:8" }, { "assignments": [ - 1647, - 1649 + 1644, + 1646 ], "declarations": [ { "constant": false, - "id": 1647, + "id": 1644, "mutability": "mutable", "name": "success", "nameLocation": "5462:7:8", "nodeType": "VariableDeclaration", - "scope": 1664, + "scope": 1661, "src": "5457:12:8", "stateVariable": false, "storageLocation": "default", @@ -6016,7 +6016,7 @@ "typeString": "bool" }, "typeName": { - "id": 1646, + "id": 1643, "name": "bool", "nodeType": "ElementaryTypeName", "src": "5457:4:8", @@ -6029,12 +6029,12 @@ }, { "constant": false, - "id": 1649, + "id": 1646, "mutability": "mutable", "name": "returndata", "nameLocation": "5484:10:8", "nodeType": "VariableDeclaration", - "scope": 1664, + "scope": 1661, "src": "5471:23:8", "stateVariable": false, "storageLocation": "memory", @@ -6043,7 +6043,7 @@ "typeString": "bytes" }, "typeName": { - "id": 1648, + "id": 1645, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "5471:5:8", @@ -6055,15 +6055,15 @@ "visibility": "internal" } ], - "id": 1656, + "id": 1653, "initialValue": { "arguments": [ { - "id": 1654, + "id": 1651, "name": "data", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1626, + "referencedDeclaration": 1623, "src": "5524:4:8", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -6086,18 +6086,18 @@ } ], "expression": { - "id": 1650, + "id": 1647, "name": "target", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1624, + "referencedDeclaration": 1621, "src": "5498:6:8", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 1651, + "id": 1648, "isConstant": false, "isLValue": false, "isPure": false, @@ -6111,7 +6111,7 @@ "typeString": "function (bytes memory) payable returns (bool,bytes memory)" } }, - "id": 1653, + "id": 1650, "isConstant": false, "isLValue": false, "isPure": false, @@ -6122,11 +6122,11 @@ "nodeType": "FunctionCallOptions", "options": [ { - "id": 1652, + "id": 1649, "name": "value", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1628, + "referencedDeclaration": 1625, "src": "5517:5:8", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6140,7 +6140,7 @@ "typeString": "function (bytes memory) payable returns (bool,bytes memory)" } }, - "id": 1655, + "id": 1652, "isConstant": false, "isLValue": false, "isPure": false, @@ -6163,11 +6163,11 @@ "expression": { "arguments": [ { - "id": 1658, + "id": 1655, "name": "target", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1624, + "referencedDeclaration": 1621, "src": "5573:6:8", "typeDescriptions": { "typeIdentifier": "t_address", @@ -6175,11 +6175,11 @@ } }, { - "id": 1659, + "id": 1656, "name": "success", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1647, + "referencedDeclaration": 1644, "src": "5581:7:8", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -6187,11 +6187,11 @@ } }, { - "id": 1660, + "id": 1657, "name": "returndata", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1649, + "referencedDeclaration": 1646, "src": "5590:10:8", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -6199,11 +6199,11 @@ } }, { - "id": 1661, + "id": 1658, "name": "errorMessage", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1630, + "referencedDeclaration": 1627, "src": "5602:12:8", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", @@ -6230,18 +6230,18 @@ "typeString": "string memory" } ], - "id": 1657, + "id": 1654, "name": "verifyCallResultFromTarget", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1796, + "referencedDeclaration": 1793, "src": "5546:26:8", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$_t_bool_$_t_bytes_memory_ptr_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", "typeString": "function (address,bool,bytes memory,string memory) view returns (bytes memory)" } }, - "id": 1662, + "id": 1659, "isConstant": false, "isLValue": false, "isPure": false, @@ -6257,20 +6257,20 @@ "typeString": "bytes memory" } }, - "functionReturnParameters": 1634, - "id": 1663, + "functionReturnParameters": 1631, + "id": 1660, "nodeType": "Return", "src": "5539:76:8" } ] }, "documentation": { - "id": 1622, + "id": 1619, "nodeType": "StructuredDocumentation", "src": "4934:237:8", "text": " @dev Same as {xref-Address-functionCallWithValue-address-bytes-uint256-}[`functionCallWithValue`], but\n with `errorMessage` as a fallback revert reason when `target` reverts.\n _Available since v3.1._" }, - "id": 1665, + "id": 1662, "implemented": true, "kind": "function", "modifiers": [], @@ -6278,17 +6278,17 @@ "nameLocation": "5185:21:8", "nodeType": "FunctionDefinition", "parameters": { - "id": 1631, + "id": 1628, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1624, + "id": 1621, "mutability": "mutable", "name": "target", "nameLocation": "5224:6:8", "nodeType": "VariableDeclaration", - "scope": 1665, + "scope": 1662, "src": "5216:14:8", "stateVariable": false, "storageLocation": "default", @@ -6297,7 +6297,7 @@ "typeString": "address" }, "typeName": { - "id": 1623, + "id": 1620, "name": "address", "nodeType": "ElementaryTypeName", "src": "5216:7:8", @@ -6311,12 +6311,12 @@ }, { "constant": false, - "id": 1626, + "id": 1623, "mutability": "mutable", "name": "data", "nameLocation": "5253:4:8", "nodeType": "VariableDeclaration", - "scope": 1665, + "scope": 1662, "src": "5240:17:8", "stateVariable": false, "storageLocation": "memory", @@ -6325,7 +6325,7 @@ "typeString": "bytes" }, "typeName": { - "id": 1625, + "id": 1622, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "5240:5:8", @@ -6338,12 +6338,12 @@ }, { "constant": false, - "id": 1628, + "id": 1625, "mutability": "mutable", "name": "value", "nameLocation": "5275:5:8", "nodeType": "VariableDeclaration", - "scope": 1665, + "scope": 1662, "src": "5267:13:8", "stateVariable": false, "storageLocation": "default", @@ -6352,7 +6352,7 @@ "typeString": "uint256" }, "typeName": { - "id": 1627, + "id": 1624, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "5267:7:8", @@ -6365,12 +6365,12 @@ }, { "constant": false, - "id": 1630, + "id": 1627, "mutability": "mutable", "name": "errorMessage", "nameLocation": "5304:12:8", "nodeType": "VariableDeclaration", - "scope": 1665, + "scope": 1662, "src": "5290:26:8", "stateVariable": false, "storageLocation": "memory", @@ -6379,7 +6379,7 @@ "typeString": "string" }, "typeName": { - "id": 1629, + "id": 1626, "name": "string", "nodeType": "ElementaryTypeName", "src": "5290:6:8", @@ -6394,17 +6394,17 @@ "src": "5206:116:8" }, "returnParameters": { - "id": 1634, + "id": 1631, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1633, + "id": 1630, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 1665, + "scope": 1662, "src": "5341:12:8", "stateVariable": false, "storageLocation": "memory", @@ -6413,7 +6413,7 @@ "typeString": "bytes" }, "typeName": { - "id": 1632, + "id": 1629, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "5341:5:8", @@ -6427,7 +6427,7 @@ ], "src": "5340:14:8" }, - "scope": 1841, + "scope": 1838, "src": "5176:446:8", "stateMutability": "nonpayable", "virtual": false, @@ -6435,7 +6435,7 @@ }, { "body": { - "id": 1681, + "id": 1678, "nodeType": "Block", "src": "5899:97:8", "statements": [ @@ -6443,11 +6443,11 @@ "expression": { "arguments": [ { - "id": 1676, + "id": 1673, "name": "target", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1668, + "referencedDeclaration": 1665, "src": "5935:6:8", "typeDescriptions": { "typeIdentifier": "t_address", @@ -6455,11 +6455,11 @@ } }, { - "id": 1677, + "id": 1674, "name": "data", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1670, + "referencedDeclaration": 1667, "src": "5943:4:8", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -6468,7 +6468,7 @@ }, { "hexValue": "416464726573733a206c6f772d6c6576656c207374617469632063616c6c206661696c6564", - "id": 1678, + "id": 1675, "isConstant": false, "isLValue": false, "isPure": true, @@ -6498,21 +6498,21 @@ "typeString": "literal_string \"Address: low-level static call failed\"" } ], - "id": 1675, + "id": 1672, "name": "functionStaticCall", "nodeType": "Identifier", "overloadedDeclarations": [ - 1682, - 1711 + 1679, + 1708 ], - "referencedDeclaration": 1711, + "referencedDeclaration": 1708, "src": "5916:18:8", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$_t_bytes_memory_ptr_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", "typeString": "function (address,bytes memory,string memory) view returns (bytes memory)" } }, - "id": 1679, + "id": 1676, "isConstant": false, "isLValue": false, "isPure": false, @@ -6528,20 +6528,20 @@ "typeString": "bytes memory" } }, - "functionReturnParameters": 1674, - "id": 1680, + "functionReturnParameters": 1671, + "id": 1677, "nodeType": "Return", "src": "5909:80:8" } ] }, "documentation": { - "id": 1666, + "id": 1663, "nodeType": "StructuredDocumentation", "src": "5628:166:8", "text": " @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],\n but performing a static call.\n _Available since v3.3._" }, - "id": 1682, + "id": 1679, "implemented": true, "kind": "function", "modifiers": [], @@ -6549,17 +6549,17 @@ "nameLocation": "5808:18:8", "nodeType": "FunctionDefinition", "parameters": { - "id": 1671, + "id": 1668, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1668, + "id": 1665, "mutability": "mutable", "name": "target", "nameLocation": "5835:6:8", "nodeType": "VariableDeclaration", - "scope": 1682, + "scope": 1679, "src": "5827:14:8", "stateVariable": false, "storageLocation": "default", @@ -6568,7 +6568,7 @@ "typeString": "address" }, "typeName": { - "id": 1667, + "id": 1664, "name": "address", "nodeType": "ElementaryTypeName", "src": "5827:7:8", @@ -6582,12 +6582,12 @@ }, { "constant": false, - "id": 1670, + "id": 1667, "mutability": "mutable", "name": "data", "nameLocation": "5856:4:8", "nodeType": "VariableDeclaration", - "scope": 1682, + "scope": 1679, "src": "5843:17:8", "stateVariable": false, "storageLocation": "memory", @@ -6596,7 +6596,7 @@ "typeString": "bytes" }, "typeName": { - "id": 1669, + "id": 1666, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "5843:5:8", @@ -6611,17 +6611,17 @@ "src": "5826:35:8" }, "returnParameters": { - "id": 1674, + "id": 1671, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1673, + "id": 1670, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 1682, + "scope": 1679, "src": "5885:12:8", "stateVariable": false, "storageLocation": "memory", @@ -6630,7 +6630,7 @@ "typeString": "bytes" }, "typeName": { - "id": 1672, + "id": 1669, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "5885:5:8", @@ -6644,7 +6644,7 @@ ], "src": "5884:14:8" }, - "scope": 1841, + "scope": 1838, "src": "5799:197:8", "stateMutability": "view", "virtual": false, @@ -6652,24 +6652,24 @@ }, { "body": { - "id": 1710, + "id": 1707, "nodeType": "Block", "src": "6338:168:8", "statements": [ { "assignments": [ - 1695, - 1697 + 1692, + 1694 ], "declarations": [ { "constant": false, - "id": 1695, + "id": 1692, "mutability": "mutable", "name": "success", "nameLocation": "6354:7:8", "nodeType": "VariableDeclaration", - "scope": 1710, + "scope": 1707, "src": "6349:12:8", "stateVariable": false, "storageLocation": "default", @@ -6678,7 +6678,7 @@ "typeString": "bool" }, "typeName": { - "id": 1694, + "id": 1691, "name": "bool", "nodeType": "ElementaryTypeName", "src": "6349:4:8", @@ -6691,12 +6691,12 @@ }, { "constant": false, - "id": 1697, + "id": 1694, "mutability": "mutable", "name": "returndata", "nameLocation": "6376:10:8", "nodeType": "VariableDeclaration", - "scope": 1710, + "scope": 1707, "src": "6363:23:8", "stateVariable": false, "storageLocation": "memory", @@ -6705,7 +6705,7 @@ "typeString": "bytes" }, "typeName": { - "id": 1696, + "id": 1693, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "6363:5:8", @@ -6717,15 +6717,15 @@ "visibility": "internal" } ], - "id": 1702, + "id": 1699, "initialValue": { "arguments": [ { - "id": 1700, + "id": 1697, "name": "data", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1687, + "referencedDeclaration": 1684, "src": "6408:4:8", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -6741,18 +6741,18 @@ } ], "expression": { - "id": 1698, + "id": 1695, "name": "target", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1685, + "referencedDeclaration": 1682, "src": "6390:6:8", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 1699, + "id": 1696, "isConstant": false, "isLValue": false, "isPure": false, @@ -6766,7 +6766,7 @@ "typeString": "function (bytes memory) view returns (bool,bytes memory)" } }, - "id": 1701, + "id": 1698, "isConstant": false, "isLValue": false, "isPure": false, @@ -6789,11 +6789,11 @@ "expression": { "arguments": [ { - "id": 1704, + "id": 1701, "name": "target", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1685, + "referencedDeclaration": 1682, "src": "6457:6:8", "typeDescriptions": { "typeIdentifier": "t_address", @@ -6801,11 +6801,11 @@ } }, { - "id": 1705, + "id": 1702, "name": "success", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1695, + "referencedDeclaration": 1692, "src": "6465:7:8", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -6813,11 +6813,11 @@ } }, { - "id": 1706, + "id": 1703, "name": "returndata", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1697, + "referencedDeclaration": 1694, "src": "6474:10:8", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -6825,11 +6825,11 @@ } }, { - "id": 1707, + "id": 1704, "name": "errorMessage", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1689, + "referencedDeclaration": 1686, "src": "6486:12:8", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", @@ -6856,18 +6856,18 @@ "typeString": "string memory" } ], - "id": 1703, + "id": 1700, "name": "verifyCallResultFromTarget", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1796, + "referencedDeclaration": 1793, "src": "6430:26:8", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$_t_bool_$_t_bytes_memory_ptr_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", "typeString": "function (address,bool,bytes memory,string memory) view returns (bytes memory)" } }, - "id": 1708, + "id": 1705, "isConstant": false, "isLValue": false, "isPure": false, @@ -6883,20 +6883,20 @@ "typeString": "bytes memory" } }, - "functionReturnParameters": 1693, - "id": 1709, + "functionReturnParameters": 1690, + "id": 1706, "nodeType": "Return", "src": "6423:76:8" } ] }, "documentation": { - "id": 1683, + "id": 1680, "nodeType": "StructuredDocumentation", "src": "6002:173:8", "text": " @dev Same as {xref-Address-functionCall-address-bytes-string-}[`functionCall`],\n but performing a static call.\n _Available since v3.3._" }, - "id": 1711, + "id": 1708, "implemented": true, "kind": "function", "modifiers": [], @@ -6904,17 +6904,17 @@ "nameLocation": "6189:18:8", "nodeType": "FunctionDefinition", "parameters": { - "id": 1690, + "id": 1687, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1685, + "id": 1682, "mutability": "mutable", "name": "target", "nameLocation": "6225:6:8", "nodeType": "VariableDeclaration", - "scope": 1711, + "scope": 1708, "src": "6217:14:8", "stateVariable": false, "storageLocation": "default", @@ -6923,7 +6923,7 @@ "typeString": "address" }, "typeName": { - "id": 1684, + "id": 1681, "name": "address", "nodeType": "ElementaryTypeName", "src": "6217:7:8", @@ -6937,12 +6937,12 @@ }, { "constant": false, - "id": 1687, + "id": 1684, "mutability": "mutable", "name": "data", "nameLocation": "6254:4:8", "nodeType": "VariableDeclaration", - "scope": 1711, + "scope": 1708, "src": "6241:17:8", "stateVariable": false, "storageLocation": "memory", @@ -6951,7 +6951,7 @@ "typeString": "bytes" }, "typeName": { - "id": 1686, + "id": 1683, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "6241:5:8", @@ -6964,12 +6964,12 @@ }, { "constant": false, - "id": 1689, + "id": 1686, "mutability": "mutable", "name": "errorMessage", "nameLocation": "6282:12:8", "nodeType": "VariableDeclaration", - "scope": 1711, + "scope": 1708, "src": "6268:26:8", "stateVariable": false, "storageLocation": "memory", @@ -6978,7 +6978,7 @@ "typeString": "string" }, "typeName": { - "id": 1688, + "id": 1685, "name": "string", "nodeType": "ElementaryTypeName", "src": "6268:6:8", @@ -6993,17 +6993,17 @@ "src": "6207:93:8" }, "returnParameters": { - "id": 1693, + "id": 1690, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1692, + "id": 1689, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 1711, + "scope": 1708, "src": "6324:12:8", "stateVariable": false, "storageLocation": "memory", @@ -7012,7 +7012,7 @@ "typeString": "bytes" }, "typeName": { - "id": 1691, + "id": 1688, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "6324:5:8", @@ -7026,7 +7026,7 @@ ], "src": "6323:14:8" }, - "scope": 1841, + "scope": 1838, "src": "6180:326:8", "stateMutability": "view", "virtual": false, @@ -7034,7 +7034,7 @@ }, { "body": { - "id": 1727, + "id": 1724, "nodeType": "Block", "src": "6782:101:8", "statements": [ @@ -7042,11 +7042,11 @@ "expression": { "arguments": [ { - "id": 1722, + "id": 1719, "name": "target", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1714, + "referencedDeclaration": 1711, "src": "6820:6:8", "typeDescriptions": { "typeIdentifier": "t_address", @@ -7054,11 +7054,11 @@ } }, { - "id": 1723, + "id": 1720, "name": "data", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1716, + "referencedDeclaration": 1713, "src": "6828:4:8", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -7067,7 +7067,7 @@ }, { "hexValue": "416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564", - "id": 1724, + "id": 1721, "isConstant": false, "isLValue": false, "isPure": true, @@ -7097,21 +7097,21 @@ "typeString": "literal_string \"Address: low-level delegate call failed\"" } ], - "id": 1721, + "id": 1718, "name": "functionDelegateCall", "nodeType": "Identifier", "overloadedDeclarations": [ - 1728, - 1757 + 1725, + 1754 ], - "referencedDeclaration": 1757, + "referencedDeclaration": 1754, "src": "6799:20:8", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_bytes_memory_ptr_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", "typeString": "function (address,bytes memory,string memory) returns (bytes memory)" } }, - "id": 1725, + "id": 1722, "isConstant": false, "isLValue": false, "isPure": false, @@ -7127,20 +7127,20 @@ "typeString": "bytes memory" } }, - "functionReturnParameters": 1720, - "id": 1726, + "functionReturnParameters": 1717, + "id": 1723, "nodeType": "Return", "src": "6792:84:8" } ] }, "documentation": { - "id": 1712, + "id": 1709, "nodeType": "StructuredDocumentation", "src": "6512:168:8", "text": " @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],\n but performing a delegate call.\n _Available since v3.4._" }, - "id": 1728, + "id": 1725, "implemented": true, "kind": "function", "modifiers": [], @@ -7148,17 +7148,17 @@ "nameLocation": "6694:20:8", "nodeType": "FunctionDefinition", "parameters": { - "id": 1717, + "id": 1714, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1714, + "id": 1711, "mutability": "mutable", "name": "target", "nameLocation": "6723:6:8", "nodeType": "VariableDeclaration", - "scope": 1728, + "scope": 1725, "src": "6715:14:8", "stateVariable": false, "storageLocation": "default", @@ -7167,7 +7167,7 @@ "typeString": "address" }, "typeName": { - "id": 1713, + "id": 1710, "name": "address", "nodeType": "ElementaryTypeName", "src": "6715:7:8", @@ -7181,12 +7181,12 @@ }, { "constant": false, - "id": 1716, + "id": 1713, "mutability": "mutable", "name": "data", "nameLocation": "6744:4:8", "nodeType": "VariableDeclaration", - "scope": 1728, + "scope": 1725, "src": "6731:17:8", "stateVariable": false, "storageLocation": "memory", @@ -7195,7 +7195,7 @@ "typeString": "bytes" }, "typeName": { - "id": 1715, + "id": 1712, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "6731:5:8", @@ -7210,17 +7210,17 @@ "src": "6714:35:8" }, "returnParameters": { - "id": 1720, + "id": 1717, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1719, + "id": 1716, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 1728, + "scope": 1725, "src": "6768:12:8", "stateVariable": false, "storageLocation": "memory", @@ -7229,7 +7229,7 @@ "typeString": "bytes" }, "typeName": { - "id": 1718, + "id": 1715, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "6768:5:8", @@ -7243,7 +7243,7 @@ ], "src": "6767:14:8" }, - "scope": 1841, + "scope": 1838, "src": "6685:198:8", "stateMutability": "nonpayable", "virtual": false, @@ -7251,24 +7251,24 @@ }, { "body": { - "id": 1756, + "id": 1753, "nodeType": "Block", "src": "7224:170:8", "statements": [ { "assignments": [ - 1741, - 1743 + 1738, + 1740 ], "declarations": [ { "constant": false, - "id": 1741, + "id": 1738, "mutability": "mutable", "name": "success", "nameLocation": "7240:7:8", "nodeType": "VariableDeclaration", - "scope": 1756, + "scope": 1753, "src": "7235:12:8", "stateVariable": false, "storageLocation": "default", @@ -7277,7 +7277,7 @@ "typeString": "bool" }, "typeName": { - "id": 1740, + "id": 1737, "name": "bool", "nodeType": "ElementaryTypeName", "src": "7235:4:8", @@ -7290,12 +7290,12 @@ }, { "constant": false, - "id": 1743, + "id": 1740, "mutability": "mutable", "name": "returndata", "nameLocation": "7262:10:8", "nodeType": "VariableDeclaration", - "scope": 1756, + "scope": 1753, "src": "7249:23:8", "stateVariable": false, "storageLocation": "memory", @@ -7304,7 +7304,7 @@ "typeString": "bytes" }, "typeName": { - "id": 1742, + "id": 1739, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "7249:5:8", @@ -7316,15 +7316,15 @@ "visibility": "internal" } ], - "id": 1748, + "id": 1745, "initialValue": { "arguments": [ { - "id": 1746, + "id": 1743, "name": "data", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1733, + "referencedDeclaration": 1730, "src": "7296:4:8", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -7340,18 +7340,18 @@ } ], "expression": { - "id": 1744, + "id": 1741, "name": "target", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1731, + "referencedDeclaration": 1728, "src": "7276:6:8", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 1745, + "id": 1742, "isConstant": false, "isLValue": false, "isPure": false, @@ -7365,7 +7365,7 @@ "typeString": "function (bytes memory) returns (bool,bytes memory)" } }, - "id": 1747, + "id": 1744, "isConstant": false, "isLValue": false, "isPure": false, @@ -7388,11 +7388,11 @@ "expression": { "arguments": [ { - "id": 1750, + "id": 1747, "name": "target", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1731, + "referencedDeclaration": 1728, "src": "7345:6:8", "typeDescriptions": { "typeIdentifier": "t_address", @@ -7400,11 +7400,11 @@ } }, { - "id": 1751, + "id": 1748, "name": "success", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1741, + "referencedDeclaration": 1738, "src": "7353:7:8", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -7412,11 +7412,11 @@ } }, { - "id": 1752, + "id": 1749, "name": "returndata", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1743, + "referencedDeclaration": 1740, "src": "7362:10:8", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -7424,11 +7424,11 @@ } }, { - "id": 1753, + "id": 1750, "name": "errorMessage", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1735, + "referencedDeclaration": 1732, "src": "7374:12:8", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", @@ -7455,18 +7455,18 @@ "typeString": "string memory" } ], - "id": 1749, + "id": 1746, "name": "verifyCallResultFromTarget", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1796, + "referencedDeclaration": 1793, "src": "7318:26:8", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$_t_bool_$_t_bytes_memory_ptr_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", "typeString": "function (address,bool,bytes memory,string memory) view returns (bytes memory)" } }, - "id": 1754, + "id": 1751, "isConstant": false, "isLValue": false, "isPure": false, @@ -7482,20 +7482,20 @@ "typeString": "bytes memory" } }, - "functionReturnParameters": 1739, - "id": 1755, + "functionReturnParameters": 1736, + "id": 1752, "nodeType": "Return", "src": "7311:76:8" } ] }, "documentation": { - "id": 1729, + "id": 1726, "nodeType": "StructuredDocumentation", "src": "6889:175:8", "text": " @dev Same as {xref-Address-functionCall-address-bytes-string-}[`functionCall`],\n but performing a delegate call.\n _Available since v3.4._" }, - "id": 1757, + "id": 1754, "implemented": true, "kind": "function", "modifiers": [], @@ -7503,17 +7503,17 @@ "nameLocation": "7078:20:8", "nodeType": "FunctionDefinition", "parameters": { - "id": 1736, + "id": 1733, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1731, + "id": 1728, "mutability": "mutable", "name": "target", "nameLocation": "7116:6:8", "nodeType": "VariableDeclaration", - "scope": 1757, + "scope": 1754, "src": "7108:14:8", "stateVariable": false, "storageLocation": "default", @@ -7522,7 +7522,7 @@ "typeString": "address" }, "typeName": { - "id": 1730, + "id": 1727, "name": "address", "nodeType": "ElementaryTypeName", "src": "7108:7:8", @@ -7536,12 +7536,12 @@ }, { "constant": false, - "id": 1733, + "id": 1730, "mutability": "mutable", "name": "data", "nameLocation": "7145:4:8", "nodeType": "VariableDeclaration", - "scope": 1757, + "scope": 1754, "src": "7132:17:8", "stateVariable": false, "storageLocation": "memory", @@ -7550,7 +7550,7 @@ "typeString": "bytes" }, "typeName": { - "id": 1732, + "id": 1729, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "7132:5:8", @@ -7563,12 +7563,12 @@ }, { "constant": false, - "id": 1735, + "id": 1732, "mutability": "mutable", "name": "errorMessage", "nameLocation": "7173:12:8", "nodeType": "VariableDeclaration", - "scope": 1757, + "scope": 1754, "src": "7159:26:8", "stateVariable": false, "storageLocation": "memory", @@ -7577,7 +7577,7 @@ "typeString": "string" }, "typeName": { - "id": 1734, + "id": 1731, "name": "string", "nodeType": "ElementaryTypeName", "src": "7159:6:8", @@ -7592,17 +7592,17 @@ "src": "7098:93:8" }, "returnParameters": { - "id": 1739, + "id": 1736, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1738, + "id": 1735, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 1757, + "scope": 1754, "src": "7210:12:8", "stateVariable": false, "storageLocation": "memory", @@ -7611,7 +7611,7 @@ "typeString": "bytes" }, "typeName": { - "id": 1737, + "id": 1734, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "7210:5:8", @@ -7625,7 +7625,7 @@ ], "src": "7209:14:8" }, - "scope": 1841, + "scope": 1838, "src": "7069:325:8", "stateMutability": "nonpayable", "virtual": false, @@ -7633,17 +7633,17 @@ }, { "body": { - "id": 1795, + "id": 1792, "nodeType": "Block", "src": "7876:434:8", "statements": [ { "condition": { - "id": 1771, + "id": 1768, "name": "success", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1762, + "referencedDeclaration": 1759, "src": "7890:7:8", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -7651,7 +7651,7 @@ } }, "falseBody": { - "id": 1793, + "id": 1790, "nodeType": "Block", "src": "8246:58:8", "statements": [ @@ -7659,11 +7659,11 @@ "expression": { "arguments": [ { - "id": 1789, + "id": 1786, "name": "returndata", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1764, + "referencedDeclaration": 1761, "src": "8268:10:8", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -7671,11 +7671,11 @@ } }, { - "id": 1790, + "id": 1787, "name": "errorMessage", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1766, + "referencedDeclaration": 1763, "src": "8280:12:8", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", @@ -7694,18 +7694,18 @@ "typeString": "string memory" } ], - "id": 1788, + "id": 1785, "name": "_revert", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1840, + "referencedDeclaration": 1837, "src": "8260:7:8", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bytes memory,string memory) pure" } }, - "id": 1791, + "id": 1788, "isConstant": false, "isLValue": false, "isPure": false, @@ -7721,17 +7721,17 @@ "typeString": "tuple()" } }, - "id": 1792, + "id": 1789, "nodeType": "ExpressionStatement", "src": "8260:33:8" } ] }, - "id": 1794, + "id": 1791, "nodeType": "IfStatement", "src": "7886:418:8", "trueBody": { - "id": 1787, + "id": 1784, "nodeType": "Block", "src": "7899:341:8", "statements": [ @@ -7741,25 +7741,25 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1775, + "id": 1772, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 1772, + "id": 1769, "name": "returndata", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1764, + "referencedDeclaration": 1761, "src": "7917:10:8", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "id": 1773, + "id": 1770, "isConstant": false, "isLValue": false, "isPure": false, @@ -7777,7 +7777,7 @@ "operator": "==", "rightExpression": { "hexValue": "30", - "id": 1774, + "id": 1771, "isConstant": false, "isLValue": false, "isPure": true, @@ -7797,11 +7797,11 @@ "typeString": "bool" } }, - "id": 1784, + "id": 1781, "nodeType": "IfStatement", "src": "7913:286:8", "trueBody": { - "id": 1783, + "id": 1780, "nodeType": "Block", "src": "7941:258:8", "statements": [ @@ -7811,11 +7811,11 @@ { "arguments": [ { - "id": 1778, + "id": 1775, "name": "target", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1760, + "referencedDeclaration": 1757, "src": "8143:6:8", "typeDescriptions": { "typeIdentifier": "t_address", @@ -7830,18 +7830,18 @@ "typeString": "address" } ], - "id": 1777, + "id": 1774, "name": "isContract", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1529, + "referencedDeclaration": 1526, "src": "8132:10:8", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", "typeString": "function (address) view returns (bool)" } }, - "id": 1779, + "id": 1776, "isConstant": false, "isLValue": false, "isPure": false, @@ -7859,7 +7859,7 @@ }, { "hexValue": "416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374", - "id": 1780, + "id": 1777, "isConstant": false, "isLValue": false, "isPure": true, @@ -7885,7 +7885,7 @@ "typeString": "literal_string \"Address: call to non-contract\"" } ], - "id": 1776, + "id": 1773, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -7899,7 +7899,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 1781, + "id": 1778, "isConstant": false, "isLValue": false, "isPure": false, @@ -7915,7 +7915,7 @@ "typeString": "tuple()" } }, - "id": 1782, + "id": 1779, "nodeType": "ExpressionStatement", "src": "8124:60:8" } @@ -7924,19 +7924,19 @@ }, { "expression": { - "id": 1785, + "id": 1782, "name": "returndata", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1764, + "referencedDeclaration": 1761, "src": "8219:10:8", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "functionReturnParameters": 1770, - "id": 1786, + "functionReturnParameters": 1767, + "id": 1783, "nodeType": "Return", "src": "8212:17:8" } @@ -7946,12 +7946,12 @@ ] }, "documentation": { - "id": 1758, + "id": 1755, "nodeType": "StructuredDocumentation", "src": "7400:277:8", "text": " @dev Tool to verify that a low level call to smart-contract was successful, and revert (either by bubbling\n the revert reason or using the provided one) in case of unsuccessful call or if target was not a contract.\n _Available since v4.8._" }, - "id": 1796, + "id": 1793, "implemented": true, "kind": "function", "modifiers": [], @@ -7959,17 +7959,17 @@ "nameLocation": "7691:26:8", "nodeType": "FunctionDefinition", "parameters": { - "id": 1767, + "id": 1764, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1760, + "id": 1757, "mutability": "mutable", "name": "target", "nameLocation": "7735:6:8", "nodeType": "VariableDeclaration", - "scope": 1796, + "scope": 1793, "src": "7727:14:8", "stateVariable": false, "storageLocation": "default", @@ -7978,7 +7978,7 @@ "typeString": "address" }, "typeName": { - "id": 1759, + "id": 1756, "name": "address", "nodeType": "ElementaryTypeName", "src": "7727:7:8", @@ -7992,12 +7992,12 @@ }, { "constant": false, - "id": 1762, + "id": 1759, "mutability": "mutable", "name": "success", "nameLocation": "7756:7:8", "nodeType": "VariableDeclaration", - "scope": 1796, + "scope": 1793, "src": "7751:12:8", "stateVariable": false, "storageLocation": "default", @@ -8006,7 +8006,7 @@ "typeString": "bool" }, "typeName": { - "id": 1761, + "id": 1758, "name": "bool", "nodeType": "ElementaryTypeName", "src": "7751:4:8", @@ -8019,12 +8019,12 @@ }, { "constant": false, - "id": 1764, + "id": 1761, "mutability": "mutable", "name": "returndata", "nameLocation": "7786:10:8", "nodeType": "VariableDeclaration", - "scope": 1796, + "scope": 1793, "src": "7773:23:8", "stateVariable": false, "storageLocation": "memory", @@ -8033,7 +8033,7 @@ "typeString": "bytes" }, "typeName": { - "id": 1763, + "id": 1760, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "7773:5:8", @@ -8046,12 +8046,12 @@ }, { "constant": false, - "id": 1766, + "id": 1763, "mutability": "mutable", "name": "errorMessage", "nameLocation": "7820:12:8", "nodeType": "VariableDeclaration", - "scope": 1796, + "scope": 1793, "src": "7806:26:8", "stateVariable": false, "storageLocation": "memory", @@ -8060,7 +8060,7 @@ "typeString": "string" }, "typeName": { - "id": 1765, + "id": 1762, "name": "string", "nodeType": "ElementaryTypeName", "src": "7806:6:8", @@ -8075,17 +8075,17 @@ "src": "7717:121:8" }, "returnParameters": { - "id": 1770, + "id": 1767, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1769, + "id": 1766, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 1796, + "scope": 1793, "src": "7862:12:8", "stateVariable": false, "storageLocation": "memory", @@ -8094,7 +8094,7 @@ "typeString": "bytes" }, "typeName": { - "id": 1768, + "id": 1765, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "7862:5:8", @@ -8108,7 +8108,7 @@ ], "src": "7861:14:8" }, - "scope": 1841, + "scope": 1838, "src": "7682:628:8", "stateMutability": "view", "virtual": false, @@ -8116,17 +8116,17 @@ }, { "body": { - "id": 1819, + "id": 1816, "nodeType": "Block", "src": "8691:135:8", "statements": [ { "condition": { - "id": 1808, + "id": 1805, "name": "success", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1799, + "referencedDeclaration": 1796, "src": "8705:7:8", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -8134,7 +8134,7 @@ } }, "falseBody": { - "id": 1817, + "id": 1814, "nodeType": "Block", "src": "8762:58:8", "statements": [ @@ -8142,11 +8142,11 @@ "expression": { "arguments": [ { - "id": 1813, + "id": 1810, "name": "returndata", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1801, + "referencedDeclaration": 1798, "src": "8784:10:8", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", @@ -8154,11 +8154,11 @@ } }, { - "id": 1814, + "id": 1811, "name": "errorMessage", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1803, + "referencedDeclaration": 1800, "src": "8796:12:8", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", @@ -8177,18 +8177,18 @@ "typeString": "string memory" } ], - "id": 1812, + "id": 1809, "name": "_revert", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1840, + "referencedDeclaration": 1837, "src": "8776:7:8", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bytes memory,string memory) pure" } }, - "id": 1815, + "id": 1812, "isConstant": false, "isLValue": false, "isPure": false, @@ -8204,35 +8204,35 @@ "typeString": "tuple()" } }, - "id": 1816, + "id": 1813, "nodeType": "ExpressionStatement", "src": "8776:33:8" } ] }, - "id": 1818, + "id": 1815, "nodeType": "IfStatement", "src": "8701:119:8", "trueBody": { - "id": 1811, + "id": 1808, "nodeType": "Block", "src": "8714:42:8", "statements": [ { "expression": { - "id": 1809, + "id": 1806, "name": "returndata", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1801, + "referencedDeclaration": 1798, "src": "8735:10:8", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "functionReturnParameters": 1807, - "id": 1810, + "functionReturnParameters": 1804, + "id": 1807, "nodeType": "Return", "src": "8728:17:8" } @@ -8242,12 +8242,12 @@ ] }, "documentation": { - "id": 1797, + "id": 1794, "nodeType": "StructuredDocumentation", "src": "8316:210:8", "text": " @dev Tool to verify that a low level call was successful, and revert if it wasn't, either by bubbling the\n revert reason or using the provided one.\n _Available since v4.3._" }, - "id": 1820, + "id": 1817, "implemented": true, "kind": "function", "modifiers": [], @@ -8255,17 +8255,17 @@ "nameLocation": "8540:16:8", "nodeType": "FunctionDefinition", "parameters": { - "id": 1804, + "id": 1801, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1799, + "id": 1796, "mutability": "mutable", "name": "success", "nameLocation": "8571:7:8", "nodeType": "VariableDeclaration", - "scope": 1820, + "scope": 1817, "src": "8566:12:8", "stateVariable": false, "storageLocation": "default", @@ -8274,7 +8274,7 @@ "typeString": "bool" }, "typeName": { - "id": 1798, + "id": 1795, "name": "bool", "nodeType": "ElementaryTypeName", "src": "8566:4:8", @@ -8287,12 +8287,12 @@ }, { "constant": false, - "id": 1801, + "id": 1798, "mutability": "mutable", "name": "returndata", "nameLocation": "8601:10:8", "nodeType": "VariableDeclaration", - "scope": 1820, + "scope": 1817, "src": "8588:23:8", "stateVariable": false, "storageLocation": "memory", @@ -8301,7 +8301,7 @@ "typeString": "bytes" }, "typeName": { - "id": 1800, + "id": 1797, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "8588:5:8", @@ -8314,12 +8314,12 @@ }, { "constant": false, - "id": 1803, + "id": 1800, "mutability": "mutable", "name": "errorMessage", "nameLocation": "8635:12:8", "nodeType": "VariableDeclaration", - "scope": 1820, + "scope": 1817, "src": "8621:26:8", "stateVariable": false, "storageLocation": "memory", @@ -8328,7 +8328,7 @@ "typeString": "string" }, "typeName": { - "id": 1802, + "id": 1799, "name": "string", "nodeType": "ElementaryTypeName", "src": "8621:6:8", @@ -8343,17 +8343,17 @@ "src": "8556:97:8" }, "returnParameters": { - "id": 1807, + "id": 1804, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1806, + "id": 1803, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 1820, + "scope": 1817, "src": "8677:12:8", "stateVariable": false, "storageLocation": "memory", @@ -8362,7 +8362,7 @@ "typeString": "bytes" }, "typeName": { - "id": 1805, + "id": 1802, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "8677:5:8", @@ -8376,7 +8376,7 @@ ], "src": "8676:14:8" }, - "scope": 1841, + "scope": 1838, "src": "8531:295:8", "stateMutability": "pure", "virtual": false, @@ -8384,7 +8384,7 @@ }, { "body": { - "id": 1839, + "id": 1836, "nodeType": "Block", "src": "8915:457:8", "statements": [ @@ -8394,25 +8394,25 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1830, + "id": 1827, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { - "id": 1827, + "id": 1824, "name": "returndata", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1822, + "referencedDeclaration": 1819, "src": "8991:10:8", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, - "id": 1828, + "id": 1825, "isConstant": false, "isLValue": false, "isPure": false, @@ -8430,7 +8430,7 @@ "operator": ">", "rightExpression": { "hexValue": "30", - "id": 1829, + "id": 1826, "isConstant": false, "isLValue": false, "isPure": true, @@ -8451,7 +8451,7 @@ } }, "falseBody": { - "id": 1837, + "id": 1834, "nodeType": "Block", "src": "9321:45:8", "statements": [ @@ -8459,11 +8459,11 @@ "expression": { "arguments": [ { - "id": 1834, + "id": 1831, "name": "errorMessage", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1824, + "referencedDeclaration": 1821, "src": "9342:12:8", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", @@ -8478,7 +8478,7 @@ "typeString": "string memory" } ], - "id": 1833, + "id": 1830, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -8492,7 +8492,7 @@ "typeString": "function (string memory) pure" } }, - "id": 1835, + "id": 1832, "isConstant": false, "isLValue": false, "isPure": false, @@ -8508,17 +8508,17 @@ "typeString": "tuple()" } }, - "id": 1836, + "id": 1833, "nodeType": "ExpressionStatement", "src": "9335:20:8" } ] }, - "id": 1838, + "id": 1835, "nodeType": "IfStatement", "src": "8987:379:8", "trueBody": { - "id": 1832, + "id": 1829, "nodeType": "Block", "src": "9014:301:8", "statements": [ @@ -8604,21 +8604,21 @@ "evmVersion": "paris", "externalReferences": [ { - "declaration": 1822, + "declaration": 1819, "isOffset": false, "isSlot": false, "src": "9219:10:8", "valueSize": 1 }, { - "declaration": 1822, + "declaration": 1819, "isOffset": false, "isSlot": false, "src": "9262:10:8", "valueSize": 1 } ], - "id": 1831, + "id": 1828, "nodeType": "InlineAssembly", "src": "9163:142:8" } @@ -8627,7 +8627,7 @@ } ] }, - "id": 1840, + "id": 1837, "implemented": true, "kind": "function", "modifiers": [], @@ -8635,17 +8635,17 @@ "nameLocation": "8841:7:8", "nodeType": "FunctionDefinition", "parameters": { - "id": 1825, + "id": 1822, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1822, + "id": 1819, "mutability": "mutable", "name": "returndata", "nameLocation": "8862:10:8", "nodeType": "VariableDeclaration", - "scope": 1840, + "scope": 1837, "src": "8849:23:8", "stateVariable": false, "storageLocation": "memory", @@ -8654,7 +8654,7 @@ "typeString": "bytes" }, "typeName": { - "id": 1821, + "id": 1818, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "8849:5:8", @@ -8667,12 +8667,12 @@ }, { "constant": false, - "id": 1824, + "id": 1821, "mutability": "mutable", "name": "errorMessage", "nameLocation": "8888:12:8", "nodeType": "VariableDeclaration", - "scope": 1840, + "scope": 1837, "src": "8874:26:8", "stateVariable": false, "storageLocation": "memory", @@ -8681,7 +8681,7 @@ "typeString": "string" }, "typeName": { - "id": 1823, + "id": 1820, "name": "string", "nodeType": "ElementaryTypeName", "src": "8874:6:8", @@ -8696,19 +8696,19 @@ "src": "8848:53:8" }, "returnParameters": { - "id": 1826, + "id": 1823, "nodeType": "ParameterList", "parameters": [], "src": "8915:0:8" }, - "scope": 1841, + "scope": 1838, "src": "8832:540:8", "stateMutability": "pure", "virtual": false, "visibility": "private" } ], - "scope": 1842, + "scope": 1839, "src": "194:9180:8", "usedErrors": [] } @@ -8721,5 +8721,5 @@ }, "networks": {}, "schemaVersion": "2.0.1", - "updatedAt": "2024-06-20T09:33:52.554Z" + "updatedAt": "2024-06-27T12:24:25.260Z" } \ No newline at end of file diff --git a/build/contracts/Context.json b/build/contracts/Context.json index 42df018..14584cf 100644 --- a/build/contracts/Context.json +++ b/build/contracts/Context.json @@ -11,15 +11,15 @@ "absolutePath": "@openzeppelin/contracts/utils/Context.sol", "exportedSymbols": { "Context": [ - 2612 + 2609 ] }, - "id": 2613, + "id": 2610, "license": "MIT", "nodeType": "SourceUnit", "nodes": [ { - "id": 2584, + "id": 2581, "literals": [ "solidity", "^", @@ -36,15 +36,15 @@ "contractDependencies": [], "contractKind": "contract", "documentation": { - "id": 2585, + "id": 2582, "nodeType": "StructuredDocumentation", "src": "126:496:13", "text": " @dev Provides information about the current execution context, including the\n sender of the transaction and its data. While these are generally available\n via msg.sender and msg.data, they should not be accessed in such a direct\n manner, since when dealing with meta-transactions the account sending and\n paying for execution may not be the actual sender (as far as an application\n is concerned).\n This contract is only required for intermediate, library-like contracts." }, "fullyImplemented": true, - "id": 2612, + "id": 2609, "linearizedBaseContracts": [ - 2612 + 2609 ], "name": "Context", "nameLocation": "641:7:13", @@ -52,14 +52,14 @@ "nodes": [ { "body": { - "id": 2593, + "id": 2590, "nodeType": "Block", "src": "717:34:13", "statements": [ { "expression": { "expression": { - "id": 2590, + "id": 2587, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -70,7 +70,7 @@ "typeString": "msg" } }, - "id": 2591, + "id": 2588, "isConstant": false, "isLValue": false, "isPure": false, @@ -84,14 +84,14 @@ "typeString": "address" } }, - "functionReturnParameters": 2589, - "id": 2592, + "functionReturnParameters": 2586, + "id": 2589, "nodeType": "Return", "src": "727:17:13" } ] }, - "id": 2594, + "id": 2591, "implemented": true, "kind": "function", "modifiers": [], @@ -99,23 +99,23 @@ "nameLocation": "664:10:13", "nodeType": "FunctionDefinition", "parameters": { - "id": 2586, + "id": 2583, "nodeType": "ParameterList", "parameters": [], "src": "674:2:13" }, "returnParameters": { - "id": 2589, + "id": 2586, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2588, + "id": 2585, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 2594, + "scope": 2591, "src": "708:7:13", "stateVariable": false, "storageLocation": "default", @@ -124,7 +124,7 @@ "typeString": "address" }, "typeName": { - "id": 2587, + "id": 2584, "name": "address", "nodeType": "ElementaryTypeName", "src": "708:7:13", @@ -139,7 +139,7 @@ ], "src": "707:9:13" }, - "scope": 2612, + "scope": 2609, "src": "655:96:13", "stateMutability": "view", "virtual": true, @@ -147,14 +147,14 @@ }, { "body": { - "id": 2602, + "id": 2599, "nodeType": "Block", "src": "824:32:13", "statements": [ { "expression": { "expression": { - "id": 2599, + "id": 2596, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -165,7 +165,7 @@ "typeString": "msg" } }, - "id": 2600, + "id": 2597, "isConstant": false, "isLValue": false, "isPure": false, @@ -179,14 +179,14 @@ "typeString": "bytes calldata" } }, - "functionReturnParameters": 2598, - "id": 2601, + "functionReturnParameters": 2595, + "id": 2598, "nodeType": "Return", "src": "834:15:13" } ] }, - "id": 2603, + "id": 2600, "implemented": true, "kind": "function", "modifiers": [], @@ -194,23 +194,23 @@ "nameLocation": "766:8:13", "nodeType": "FunctionDefinition", "parameters": { - "id": 2595, + "id": 2592, "nodeType": "ParameterList", "parameters": [], "src": "774:2:13" }, "returnParameters": { - "id": 2598, + "id": 2595, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2597, + "id": 2594, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 2603, + "scope": 2600, "src": "808:14:13", "stateVariable": false, "storageLocation": "calldata", @@ -219,7 +219,7 @@ "typeString": "bytes" }, "typeName": { - "id": 2596, + "id": 2593, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "808:5:13", @@ -233,7 +233,7 @@ ], "src": "807:16:13" }, - "scope": 2612, + "scope": 2609, "src": "757:99:13", "stateMutability": "view", "virtual": true, @@ -241,14 +241,14 @@ }, { "body": { - "id": 2610, + "id": 2607, "nodeType": "Block", "src": "934:25:13", "statements": [ { "expression": { "hexValue": "30", - "id": 2608, + "id": 2605, "isConstant": false, "isLValue": false, "isPure": true, @@ -262,14 +262,14 @@ }, "value": "0" }, - "functionReturnParameters": 2607, - "id": 2609, + "functionReturnParameters": 2604, + "id": 2606, "nodeType": "Return", "src": "944:8:13" } ] }, - "id": 2611, + "id": 2608, "implemented": true, "kind": "function", "modifiers": [], @@ -277,23 +277,23 @@ "nameLocation": "871:20:13", "nodeType": "FunctionDefinition", "parameters": { - "id": 2604, + "id": 2601, "nodeType": "ParameterList", "parameters": [], "src": "891:2:13" }, "returnParameters": { - "id": 2607, + "id": 2604, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2606, + "id": 2603, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 2611, + "scope": 2608, "src": "925:7:13", "stateVariable": false, "storageLocation": "default", @@ -302,7 +302,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2605, + "id": 2602, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "925:7:13", @@ -316,14 +316,14 @@ ], "src": "924:9:13" }, - "scope": 2612, + "scope": 2609, "src": "862:97:13", "stateMutability": "view", "virtual": true, "visibility": "internal" } ], - "scope": 2613, + "scope": 2610, "src": "623:338:13", "usedErrors": [] } @@ -334,15 +334,15 @@ "absolutePath": "@openzeppelin/contracts/utils/Context.sol", "exportedSymbols": { "Context": [ - 2612 + 2609 ] }, - "id": 2613, + "id": 2610, "license": "MIT", "nodeType": "SourceUnit", "nodes": [ { - "id": 2584, + "id": 2581, "literals": [ "solidity", "^", @@ -359,15 +359,15 @@ "contractDependencies": [], "contractKind": "contract", "documentation": { - "id": 2585, + "id": 2582, "nodeType": "StructuredDocumentation", "src": "126:496:13", "text": " @dev Provides information about the current execution context, including the\n sender of the transaction and its data. While these are generally available\n via msg.sender and msg.data, they should not be accessed in such a direct\n manner, since when dealing with meta-transactions the account sending and\n paying for execution may not be the actual sender (as far as an application\n is concerned).\n This contract is only required for intermediate, library-like contracts." }, "fullyImplemented": true, - "id": 2612, + "id": 2609, "linearizedBaseContracts": [ - 2612 + 2609 ], "name": "Context", "nameLocation": "641:7:13", @@ -375,14 +375,14 @@ "nodes": [ { "body": { - "id": 2593, + "id": 2590, "nodeType": "Block", "src": "717:34:13", "statements": [ { "expression": { "expression": { - "id": 2590, + "id": 2587, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -393,7 +393,7 @@ "typeString": "msg" } }, - "id": 2591, + "id": 2588, "isConstant": false, "isLValue": false, "isPure": false, @@ -407,14 +407,14 @@ "typeString": "address" } }, - "functionReturnParameters": 2589, - "id": 2592, + "functionReturnParameters": 2586, + "id": 2589, "nodeType": "Return", "src": "727:17:13" } ] }, - "id": 2594, + "id": 2591, "implemented": true, "kind": "function", "modifiers": [], @@ -422,23 +422,23 @@ "nameLocation": "664:10:13", "nodeType": "FunctionDefinition", "parameters": { - "id": 2586, + "id": 2583, "nodeType": "ParameterList", "parameters": [], "src": "674:2:13" }, "returnParameters": { - "id": 2589, + "id": 2586, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2588, + "id": 2585, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 2594, + "scope": 2591, "src": "708:7:13", "stateVariable": false, "storageLocation": "default", @@ -447,7 +447,7 @@ "typeString": "address" }, "typeName": { - "id": 2587, + "id": 2584, "name": "address", "nodeType": "ElementaryTypeName", "src": "708:7:13", @@ -462,7 +462,7 @@ ], "src": "707:9:13" }, - "scope": 2612, + "scope": 2609, "src": "655:96:13", "stateMutability": "view", "virtual": true, @@ -470,14 +470,14 @@ }, { "body": { - "id": 2602, + "id": 2599, "nodeType": "Block", "src": "824:32:13", "statements": [ { "expression": { "expression": { - "id": 2599, + "id": 2596, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -488,7 +488,7 @@ "typeString": "msg" } }, - "id": 2600, + "id": 2597, "isConstant": false, "isLValue": false, "isPure": false, @@ -502,14 +502,14 @@ "typeString": "bytes calldata" } }, - "functionReturnParameters": 2598, - "id": 2601, + "functionReturnParameters": 2595, + "id": 2598, "nodeType": "Return", "src": "834:15:13" } ] }, - "id": 2603, + "id": 2600, "implemented": true, "kind": "function", "modifiers": [], @@ -517,23 +517,23 @@ "nameLocation": "766:8:13", "nodeType": "FunctionDefinition", "parameters": { - "id": 2595, + "id": 2592, "nodeType": "ParameterList", "parameters": [], "src": "774:2:13" }, "returnParameters": { - "id": 2598, + "id": 2595, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2597, + "id": 2594, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 2603, + "scope": 2600, "src": "808:14:13", "stateVariable": false, "storageLocation": "calldata", @@ -542,7 +542,7 @@ "typeString": "bytes" }, "typeName": { - "id": 2596, + "id": 2593, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "808:5:13", @@ -556,7 +556,7 @@ ], "src": "807:16:13" }, - "scope": 2612, + "scope": 2609, "src": "757:99:13", "stateMutability": "view", "virtual": true, @@ -564,14 +564,14 @@ }, { "body": { - "id": 2610, + "id": 2607, "nodeType": "Block", "src": "934:25:13", "statements": [ { "expression": { "hexValue": "30", - "id": 2608, + "id": 2605, "isConstant": false, "isLValue": false, "isPure": true, @@ -585,14 +585,14 @@ }, "value": "0" }, - "functionReturnParameters": 2607, - "id": 2609, + "functionReturnParameters": 2604, + "id": 2606, "nodeType": "Return", "src": "944:8:13" } ] }, - "id": 2611, + "id": 2608, "implemented": true, "kind": "function", "modifiers": [], @@ -600,23 +600,23 @@ "nameLocation": "871:20:13", "nodeType": "FunctionDefinition", "parameters": { - "id": 2604, + "id": 2601, "nodeType": "ParameterList", "parameters": [], "src": "891:2:13" }, "returnParameters": { - "id": 2607, + "id": 2604, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2606, + "id": 2603, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 2611, + "scope": 2608, "src": "925:7:13", "stateVariable": false, "storageLocation": "default", @@ -625,7 +625,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2605, + "id": 2602, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "925:7:13", @@ -639,14 +639,14 @@ ], "src": "924:9:13" }, - "scope": 2612, + "scope": 2609, "src": "862:97:13", "stateMutability": "view", "virtual": true, "visibility": "internal" } ], - "scope": 2613, + "scope": 2610, "src": "623:338:13", "usedErrors": [] } @@ -659,5 +659,5 @@ }, "networks": {}, "schemaVersion": "2.0.1", - "updatedAt": "2024-06-20T09:33:52.557Z" + "updatedAt": "2024-06-27T12:24:25.259Z" } \ No newline at end of file diff --git a/build/contracts/ContextUpgradeable.json b/build/contracts/ContextUpgradeable.json index 2bc747a..981c686 100644 --- a/build/contracts/ContextUpgradeable.json +++ b/build/contracts/ContextUpgradeable.json @@ -25,18 +25,18 @@ "absolutePath": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol", "exportedSymbols": { "ContextUpgradeable": [ - 1892 + 1889 ], "Initializable": [ - 1383 + 1380 ] }, - "id": 1893, + "id": 1890, "license": "MIT", "nodeType": "SourceUnit", "nodes": [ { - "id": 1843, + "id": 1840, "literals": [ "solidity", "^", @@ -49,20 +49,20 @@ { "absolutePath": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol", "file": "../proxy/utils/Initializable.sol", - "id": 1845, + "id": 1842, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", - "scope": 1893, - "sourceUnit": 1384, + "scope": 1890, + "sourceUnit": 1381, "src": "125:63:9", "symbolAliases": [ { "foreign": { - "id": 1844, + "id": 1841, "name": "Initializable", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1383, + "referencedDeclaration": 1380, "src": "133:13:9", "typeDescriptions": {} }, @@ -76,16 +76,16 @@ "baseContracts": [ { "baseName": { - "id": 1847, + "id": 1844, "name": "Initializable", "nameLocations": [ "727:13:9" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 1383, + "referencedDeclaration": 1380, "src": "727:13:9" }, - "id": 1848, + "id": 1845, "nodeType": "InheritanceSpecifier", "src": "727:13:9" } @@ -94,16 +94,16 @@ "contractDependencies": [], "contractKind": "contract", "documentation": { - "id": 1846, + "id": 1843, "nodeType": "StructuredDocumentation", "src": "190:496:9", "text": " @dev Provides information about the current execution context, including the\n sender of the transaction and its data. While these are generally available\n via msg.sender and msg.data, they should not be accessed in such a direct\n manner, since when dealing with meta-transactions the account sending and\n paying for execution may not be the actual sender (as far as an application\n is concerned).\n This contract is only required for intermediate, library-like contracts." }, "fullyImplemented": true, - "id": 1892, + "id": 1889, "linearizedBaseContracts": [ - 1892, - 1383 + 1889, + 1380 ], "name": "ContextUpgradeable", "nameLocation": "705:18:9", @@ -111,26 +111,26 @@ "nodes": [ { "body": { - "id": 1853, + "id": 1850, "nodeType": "Block", "src": "799:7:9", "statements": [] }, - "id": 1854, + "id": 1851, "implemented": true, "kind": "function", "modifiers": [ { - "id": 1851, + "id": 1848, "kind": "modifierInvocation", "modifierName": { - "id": 1850, + "id": 1847, "name": "onlyInitializing", "nameLocations": [ "782:16:9" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 1328, + "referencedDeclaration": 1325, "src": "782:16:9" }, "nodeType": "ModifierInvocation", @@ -141,18 +141,18 @@ "nameLocation": "756:14:9", "nodeType": "FunctionDefinition", "parameters": { - "id": 1849, + "id": 1846, "nodeType": "ParameterList", "parameters": [], "src": "770:2:9" }, "returnParameters": { - "id": 1852, + "id": 1849, "nodeType": "ParameterList", "parameters": [], "src": "799:0:9" }, - "scope": 1892, + "scope": 1889, "src": "747:59:9", "stateMutability": "nonpayable", "virtual": false, @@ -160,26 +160,26 @@ }, { "body": { - "id": 1859, + "id": 1856, "nodeType": "Block", "src": "874:7:9", "statements": [] }, - "id": 1860, + "id": 1857, "implemented": true, "kind": "function", "modifiers": [ { - "id": 1857, + "id": 1854, "kind": "modifierInvocation", "modifierName": { - "id": 1856, + "id": 1853, "name": "onlyInitializing", "nameLocations": [ "857:16:9" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 1328, + "referencedDeclaration": 1325, "src": "857:16:9" }, "nodeType": "ModifierInvocation", @@ -190,18 +190,18 @@ "nameLocation": "821:24:9", "nodeType": "FunctionDefinition", "parameters": { - "id": 1855, + "id": 1852, "nodeType": "ParameterList", "parameters": [], "src": "845:2:9" }, "returnParameters": { - "id": 1858, + "id": 1855, "nodeType": "ParameterList", "parameters": [], "src": "874:0:9" }, - "scope": 1892, + "scope": 1889, "src": "812:69:9", "stateMutability": "nonpayable", "virtual": false, @@ -209,14 +209,14 @@ }, { "body": { - "id": 1868, + "id": 1865, "nodeType": "Block", "src": "948:34:9", "statements": [ { "expression": { "expression": { - "id": 1865, + "id": 1862, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -227,7 +227,7 @@ "typeString": "msg" } }, - "id": 1866, + "id": 1863, "isConstant": false, "isLValue": false, "isPure": false, @@ -241,14 +241,14 @@ "typeString": "address" } }, - "functionReturnParameters": 1864, - "id": 1867, + "functionReturnParameters": 1861, + "id": 1864, "nodeType": "Return", "src": "958:17:9" } ] }, - "id": 1869, + "id": 1866, "implemented": true, "kind": "function", "modifiers": [], @@ -256,23 +256,23 @@ "nameLocation": "895:10:9", "nodeType": "FunctionDefinition", "parameters": { - "id": 1861, + "id": 1858, "nodeType": "ParameterList", "parameters": [], "src": "905:2:9" }, "returnParameters": { - "id": 1864, + "id": 1861, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1863, + "id": 1860, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 1869, + "scope": 1866, "src": "939:7:9", "stateVariable": false, "storageLocation": "default", @@ -281,7 +281,7 @@ "typeString": "address" }, "typeName": { - "id": 1862, + "id": 1859, "name": "address", "nodeType": "ElementaryTypeName", "src": "939:7:9", @@ -296,7 +296,7 @@ ], "src": "938:9:9" }, - "scope": 1892, + "scope": 1889, "src": "886:96:9", "stateMutability": "view", "virtual": true, @@ -304,14 +304,14 @@ }, { "body": { - "id": 1877, + "id": 1874, "nodeType": "Block", "src": "1055:32:9", "statements": [ { "expression": { "expression": { - "id": 1874, + "id": 1871, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -322,7 +322,7 @@ "typeString": "msg" } }, - "id": 1875, + "id": 1872, "isConstant": false, "isLValue": false, "isPure": false, @@ -336,14 +336,14 @@ "typeString": "bytes calldata" } }, - "functionReturnParameters": 1873, - "id": 1876, + "functionReturnParameters": 1870, + "id": 1873, "nodeType": "Return", "src": "1065:15:9" } ] }, - "id": 1878, + "id": 1875, "implemented": true, "kind": "function", "modifiers": [], @@ -351,23 +351,23 @@ "nameLocation": "997:8:9", "nodeType": "FunctionDefinition", "parameters": { - "id": 1870, + "id": 1867, "nodeType": "ParameterList", "parameters": [], "src": "1005:2:9" }, "returnParameters": { - "id": 1873, + "id": 1870, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1872, + "id": 1869, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 1878, + "scope": 1875, "src": "1039:14:9", "stateVariable": false, "storageLocation": "calldata", @@ -376,7 +376,7 @@ "typeString": "bytes" }, "typeName": { - "id": 1871, + "id": 1868, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "1039:5:9", @@ -390,7 +390,7 @@ ], "src": "1038:16:9" }, - "scope": 1892, + "scope": 1889, "src": "988:99:9", "stateMutability": "view", "virtual": true, @@ -398,14 +398,14 @@ }, { "body": { - "id": 1885, + "id": 1882, "nodeType": "Block", "src": "1165:25:9", "statements": [ { "expression": { "hexValue": "30", - "id": 1883, + "id": 1880, "isConstant": false, "isLValue": false, "isPure": true, @@ -419,14 +419,14 @@ }, "value": "0" }, - "functionReturnParameters": 1882, - "id": 1884, + "functionReturnParameters": 1879, + "id": 1881, "nodeType": "Return", "src": "1175:8:9" } ] }, - "id": 1886, + "id": 1883, "implemented": true, "kind": "function", "modifiers": [], @@ -434,23 +434,23 @@ "nameLocation": "1102:20:9", "nodeType": "FunctionDefinition", "parameters": { - "id": 1879, + "id": 1876, "nodeType": "ParameterList", "parameters": [], "src": "1122:2:9" }, "returnParameters": { - "id": 1882, + "id": 1879, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1881, + "id": 1878, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 1886, + "scope": 1883, "src": "1156:7:9", "stateVariable": false, "storageLocation": "default", @@ -459,7 +459,7 @@ "typeString": "uint256" }, "typeName": { - "id": 1880, + "id": 1877, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1156:7:9", @@ -473,7 +473,7 @@ ], "src": "1155:9:9" }, - "scope": 1892, + "scope": 1889, "src": "1093:97:9", "stateMutability": "view", "virtual": true, @@ -482,17 +482,17 @@ { "constant": false, "documentation": { - "id": 1887, + "id": 1884, "nodeType": "StructuredDocumentation", "src": "1196:254:9", "text": " @dev This empty reserved space is put in place to allow future versions to add new\n variables without shifting down storage in the inheritance chain.\n See https://docs.openzeppelin.com/contracts/4.x/upgradeable#storage_gaps" }, - "id": 1891, + "id": 1888, "mutability": "mutable", "name": "__gap", "nameLocation": "1475:5:9", "nodeType": "VariableDeclaration", - "scope": 1892, + "scope": 1889, "src": "1455:25:9", "stateVariable": true, "storageLocation": "default", @@ -502,7 +502,7 @@ }, "typeName": { "baseType": { - "id": 1888, + "id": 1885, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1455:7:9", @@ -511,10 +511,10 @@ "typeString": "uint256" } }, - "id": 1890, + "id": 1887, "length": { "hexValue": "3530", - "id": 1889, + "id": 1886, "isConstant": false, "isLValue": false, "isPure": true, @@ -538,7 +538,7 @@ "visibility": "private" } ], - "scope": 1893, + "scope": 1890, "src": "687:796:9", "usedErrors": [] } @@ -549,18 +549,18 @@ "absolutePath": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol", "exportedSymbols": { "ContextUpgradeable": [ - 1892 + 1889 ], "Initializable": [ - 1383 + 1380 ] }, - "id": 1893, + "id": 1890, "license": "MIT", "nodeType": "SourceUnit", "nodes": [ { - "id": 1843, + "id": 1840, "literals": [ "solidity", "^", @@ -573,20 +573,20 @@ { "absolutePath": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol", "file": "../proxy/utils/Initializable.sol", - "id": 1845, + "id": 1842, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", - "scope": 1893, - "sourceUnit": 1384, + "scope": 1890, + "sourceUnit": 1381, "src": "125:63:9", "symbolAliases": [ { "foreign": { - "id": 1844, + "id": 1841, "name": "Initializable", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1383, + "referencedDeclaration": 1380, "src": "133:13:9", "typeDescriptions": {} }, @@ -600,16 +600,16 @@ "baseContracts": [ { "baseName": { - "id": 1847, + "id": 1844, "name": "Initializable", "nameLocations": [ "727:13:9" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 1383, + "referencedDeclaration": 1380, "src": "727:13:9" }, - "id": 1848, + "id": 1845, "nodeType": "InheritanceSpecifier", "src": "727:13:9" } @@ -618,16 +618,16 @@ "contractDependencies": [], "contractKind": "contract", "documentation": { - "id": 1846, + "id": 1843, "nodeType": "StructuredDocumentation", "src": "190:496:9", "text": " @dev Provides information about the current execution context, including the\n sender of the transaction and its data. While these are generally available\n via msg.sender and msg.data, they should not be accessed in such a direct\n manner, since when dealing with meta-transactions the account sending and\n paying for execution may not be the actual sender (as far as an application\n is concerned).\n This contract is only required for intermediate, library-like contracts." }, "fullyImplemented": true, - "id": 1892, + "id": 1889, "linearizedBaseContracts": [ - 1892, - 1383 + 1889, + 1380 ], "name": "ContextUpgradeable", "nameLocation": "705:18:9", @@ -635,26 +635,26 @@ "nodes": [ { "body": { - "id": 1853, + "id": 1850, "nodeType": "Block", "src": "799:7:9", "statements": [] }, - "id": 1854, + "id": 1851, "implemented": true, "kind": "function", "modifiers": [ { - "id": 1851, + "id": 1848, "kind": "modifierInvocation", "modifierName": { - "id": 1850, + "id": 1847, "name": "onlyInitializing", "nameLocations": [ "782:16:9" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 1328, + "referencedDeclaration": 1325, "src": "782:16:9" }, "nodeType": "ModifierInvocation", @@ -665,18 +665,18 @@ "nameLocation": "756:14:9", "nodeType": "FunctionDefinition", "parameters": { - "id": 1849, + "id": 1846, "nodeType": "ParameterList", "parameters": [], "src": "770:2:9" }, "returnParameters": { - "id": 1852, + "id": 1849, "nodeType": "ParameterList", "parameters": [], "src": "799:0:9" }, - "scope": 1892, + "scope": 1889, "src": "747:59:9", "stateMutability": "nonpayable", "virtual": false, @@ -684,26 +684,26 @@ }, { "body": { - "id": 1859, + "id": 1856, "nodeType": "Block", "src": "874:7:9", "statements": [] }, - "id": 1860, + "id": 1857, "implemented": true, "kind": "function", "modifiers": [ { - "id": 1857, + "id": 1854, "kind": "modifierInvocation", "modifierName": { - "id": 1856, + "id": 1853, "name": "onlyInitializing", "nameLocations": [ "857:16:9" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 1328, + "referencedDeclaration": 1325, "src": "857:16:9" }, "nodeType": "ModifierInvocation", @@ -714,18 +714,18 @@ "nameLocation": "821:24:9", "nodeType": "FunctionDefinition", "parameters": { - "id": 1855, + "id": 1852, "nodeType": "ParameterList", "parameters": [], "src": "845:2:9" }, "returnParameters": { - "id": 1858, + "id": 1855, "nodeType": "ParameterList", "parameters": [], "src": "874:0:9" }, - "scope": 1892, + "scope": 1889, "src": "812:69:9", "stateMutability": "nonpayable", "virtual": false, @@ -733,14 +733,14 @@ }, { "body": { - "id": 1868, + "id": 1865, "nodeType": "Block", "src": "948:34:9", "statements": [ { "expression": { "expression": { - "id": 1865, + "id": 1862, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -751,7 +751,7 @@ "typeString": "msg" } }, - "id": 1866, + "id": 1863, "isConstant": false, "isLValue": false, "isPure": false, @@ -765,14 +765,14 @@ "typeString": "address" } }, - "functionReturnParameters": 1864, - "id": 1867, + "functionReturnParameters": 1861, + "id": 1864, "nodeType": "Return", "src": "958:17:9" } ] }, - "id": 1869, + "id": 1866, "implemented": true, "kind": "function", "modifiers": [], @@ -780,23 +780,23 @@ "nameLocation": "895:10:9", "nodeType": "FunctionDefinition", "parameters": { - "id": 1861, + "id": 1858, "nodeType": "ParameterList", "parameters": [], "src": "905:2:9" }, "returnParameters": { - "id": 1864, + "id": 1861, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1863, + "id": 1860, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 1869, + "scope": 1866, "src": "939:7:9", "stateVariable": false, "storageLocation": "default", @@ -805,7 +805,7 @@ "typeString": "address" }, "typeName": { - "id": 1862, + "id": 1859, "name": "address", "nodeType": "ElementaryTypeName", "src": "939:7:9", @@ -820,7 +820,7 @@ ], "src": "938:9:9" }, - "scope": 1892, + "scope": 1889, "src": "886:96:9", "stateMutability": "view", "virtual": true, @@ -828,14 +828,14 @@ }, { "body": { - "id": 1877, + "id": 1874, "nodeType": "Block", "src": "1055:32:9", "statements": [ { "expression": { "expression": { - "id": 1874, + "id": 1871, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -846,7 +846,7 @@ "typeString": "msg" } }, - "id": 1875, + "id": 1872, "isConstant": false, "isLValue": false, "isPure": false, @@ -860,14 +860,14 @@ "typeString": "bytes calldata" } }, - "functionReturnParameters": 1873, - "id": 1876, + "functionReturnParameters": 1870, + "id": 1873, "nodeType": "Return", "src": "1065:15:9" } ] }, - "id": 1878, + "id": 1875, "implemented": true, "kind": "function", "modifiers": [], @@ -875,23 +875,23 @@ "nameLocation": "997:8:9", "nodeType": "FunctionDefinition", "parameters": { - "id": 1870, + "id": 1867, "nodeType": "ParameterList", "parameters": [], "src": "1005:2:9" }, "returnParameters": { - "id": 1873, + "id": 1870, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1872, + "id": 1869, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 1878, + "scope": 1875, "src": "1039:14:9", "stateVariable": false, "storageLocation": "calldata", @@ -900,7 +900,7 @@ "typeString": "bytes" }, "typeName": { - "id": 1871, + "id": 1868, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "1039:5:9", @@ -914,7 +914,7 @@ ], "src": "1038:16:9" }, - "scope": 1892, + "scope": 1889, "src": "988:99:9", "stateMutability": "view", "virtual": true, @@ -922,14 +922,14 @@ }, { "body": { - "id": 1885, + "id": 1882, "nodeType": "Block", "src": "1165:25:9", "statements": [ { "expression": { "hexValue": "30", - "id": 1883, + "id": 1880, "isConstant": false, "isLValue": false, "isPure": true, @@ -943,14 +943,14 @@ }, "value": "0" }, - "functionReturnParameters": 1882, - "id": 1884, + "functionReturnParameters": 1879, + "id": 1881, "nodeType": "Return", "src": "1175:8:9" } ] }, - "id": 1886, + "id": 1883, "implemented": true, "kind": "function", "modifiers": [], @@ -958,23 +958,23 @@ "nameLocation": "1102:20:9", "nodeType": "FunctionDefinition", "parameters": { - "id": 1879, + "id": 1876, "nodeType": "ParameterList", "parameters": [], "src": "1122:2:9" }, "returnParameters": { - "id": 1882, + "id": 1879, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1881, + "id": 1878, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 1886, + "scope": 1883, "src": "1156:7:9", "stateVariable": false, "storageLocation": "default", @@ -983,7 +983,7 @@ "typeString": "uint256" }, "typeName": { - "id": 1880, + "id": 1877, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1156:7:9", @@ -997,7 +997,7 @@ ], "src": "1155:9:9" }, - "scope": 1892, + "scope": 1889, "src": "1093:97:9", "stateMutability": "view", "virtual": true, @@ -1006,17 +1006,17 @@ { "constant": false, "documentation": { - "id": 1887, + "id": 1884, "nodeType": "StructuredDocumentation", "src": "1196:254:9", "text": " @dev This empty reserved space is put in place to allow future versions to add new\n variables without shifting down storage in the inheritance chain.\n See https://docs.openzeppelin.com/contracts/4.x/upgradeable#storage_gaps" }, - "id": 1891, + "id": 1888, "mutability": "mutable", "name": "__gap", "nameLocation": "1475:5:9", "nodeType": "VariableDeclaration", - "scope": 1892, + "scope": 1889, "src": "1455:25:9", "stateVariable": true, "storageLocation": "default", @@ -1026,7 +1026,7 @@ }, "typeName": { "baseType": { - "id": 1888, + "id": 1885, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1455:7:9", @@ -1035,10 +1035,10 @@ "typeString": "uint256" } }, - "id": 1890, + "id": 1887, "length": { "hexValue": "3530", - "id": 1889, + "id": 1886, "isConstant": false, "isLValue": false, "isPure": true, @@ -1062,7 +1062,7 @@ "visibility": "private" } ], - "scope": 1893, + "scope": 1890, "src": "687:796:9", "usedErrors": [] } @@ -1075,5 +1075,5 @@ }, "networks": {}, "schemaVersion": "2.0.1", - "updatedAt": "2024-06-20T09:33:52.555Z" + "updatedAt": "2024-06-27T12:24:25.257Z" } \ No newline at end of file diff --git a/build/contracts/ERC20.json b/build/contracts/ERC20.json index 61198f8..008d2dc 100644 --- a/build/contracts/ERC20.json +++ b/build/contracts/ERC20.json @@ -298,24 +298,24 @@ "absolutePath": "@openzeppelin/contracts/token/ERC20/ERC20.sol", "exportedSymbols": { "Context": [ - 2612 + 2609 ], "ERC20": [ - 2479 + 2476 ], "IERC20": [ - 2557 + 2554 ], "IERC20Metadata": [ - 2582 + 2579 ] }, - "id": 2480, + "id": 2477, "license": "MIT", "nodeType": "SourceUnit", "nodes": [ { - "id": 1894, + "id": 1891, "literals": [ "solidity", "^", @@ -328,11 +328,11 @@ { "absolutePath": "@openzeppelin/contracts/token/ERC20/IERC20.sol", "file": "./IERC20.sol", - "id": 1895, + "id": 1892, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", - "scope": 2480, - "sourceUnit": 2558, + "scope": 2477, + "sourceUnit": 2555, "src": "130:22:10", "symbolAliases": [], "unitAlias": "" @@ -340,11 +340,11 @@ { "absolutePath": "@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol", "file": "./extensions/IERC20Metadata.sol", - "id": 1896, + "id": 1893, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", - "scope": 2480, - "sourceUnit": 2583, + "scope": 2477, + "sourceUnit": 2580, "src": "153:41:10", "symbolAliases": [], "unitAlias": "" @@ -352,11 +352,11 @@ { "absolutePath": "@openzeppelin/contracts/utils/Context.sol", "file": "../../utils/Context.sol", - "id": 1897, + "id": 1894, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", - "scope": 2480, - "sourceUnit": 2613, + "scope": 2477, + "sourceUnit": 2610, "src": "195:33:10", "symbolAliases": [], "unitAlias": "" @@ -366,46 +366,46 @@ "baseContracts": [ { "baseName": { - "id": 1899, + "id": 1896, "name": "Context", "nameLocations": [ "1550:7:10" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 2612, + "referencedDeclaration": 2609, "src": "1550:7:10" }, - "id": 1900, + "id": 1897, "nodeType": "InheritanceSpecifier", "src": "1550:7:10" }, { "baseName": { - "id": 1901, + "id": 1898, "name": "IERC20", "nameLocations": [ "1559:6:10" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 2557, + "referencedDeclaration": 2554, "src": "1559:6:10" }, - "id": 1902, + "id": 1899, "nodeType": "InheritanceSpecifier", "src": "1559:6:10" }, { "baseName": { - "id": 1903, + "id": 1900, "name": "IERC20Metadata", "nameLocations": [ "1567:14:10" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 2582, + "referencedDeclaration": 2579, "src": "1567:14:10" }, - "id": 1904, + "id": 1901, "nodeType": "InheritanceSpecifier", "src": "1567:14:10" } @@ -414,18 +414,18 @@ "contractDependencies": [], "contractKind": "contract", "documentation": { - "id": 1898, + "id": 1895, "nodeType": "StructuredDocumentation", "src": "230:1301:10", "text": " @dev Implementation of the {IERC20} interface.\n This implementation is agnostic to the way tokens are created. This means\n that a supply mechanism has to be added in a derived contract using {_mint}.\n For a generic mechanism see {ERC20PresetMinterPauser}.\n TIP: For a detailed writeup see our guide\n https://forum.openzeppelin.com/t/how-to-implement-erc20-supply-mechanisms/226[How\n to implement supply mechanisms].\n The default value of {decimals} is 18. To change this, you should override\n this function so it returns a different value.\n We have followed general OpenZeppelin Contracts guidelines: functions revert\n instead returning `false` on failure. This behavior is nonetheless\n conventional and does not conflict with the expectations of ERC20\n applications.\n Additionally, an {Approval} event is emitted on calls to {transferFrom}.\n This allows applications to reconstruct the allowance for all accounts just\n by listening to said events. Other implementations of the EIP may not emit\n these events, as it isn't required by the specification.\n Finally, the non-standard {decreaseAllowance} and {increaseAllowance}\n functions have been added to mitigate the well-known issues around setting\n allowances. See {IERC20-approve}." }, "fullyImplemented": true, - "id": 2479, + "id": 2476, "linearizedBaseContracts": [ - 2479, - 2582, - 2557, - 2612 + 2476, + 2579, + 2554, + 2609 ], "name": "ERC20", "nameLocation": "1541:5:10", @@ -433,12 +433,12 @@ "nodes": [ { "constant": false, - "id": 1908, + "id": 1905, "mutability": "mutable", "name": "_balances", "nameLocation": "1624:9:10", "nodeType": "VariableDeclaration", - "scope": 2479, + "scope": 2476, "src": "1588:45:10", "stateVariable": true, "storageLocation": "default", @@ -447,11 +447,11 @@ "typeString": "mapping(address => uint256)" }, "typeName": { - "id": 1907, + "id": 1904, "keyName": "", "keyNameLocation": "-1:-1:-1", "keyType": { - "id": 1905, + "id": 1902, "name": "address", "nodeType": "ElementaryTypeName", "src": "1596:7:10", @@ -469,7 +469,7 @@ "valueName": "", "valueNameLocation": "-1:-1:-1", "valueType": { - "id": 1906, + "id": 1903, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1607:7:10", @@ -483,12 +483,12 @@ }, { "constant": false, - "id": 1914, + "id": 1911, "mutability": "mutable", "name": "_allowances", "nameLocation": "1696:11:10", "nodeType": "VariableDeclaration", - "scope": 2479, + "scope": 2476, "src": "1640:67:10", "stateVariable": true, "storageLocation": "default", @@ -497,11 +497,11 @@ "typeString": "mapping(address => mapping(address => uint256))" }, "typeName": { - "id": 1913, + "id": 1910, "keyName": "", "keyNameLocation": "-1:-1:-1", "keyType": { - "id": 1909, + "id": 1906, "name": "address", "nodeType": "ElementaryTypeName", "src": "1648:7:10", @@ -519,11 +519,11 @@ "valueName": "", "valueNameLocation": "-1:-1:-1", "valueType": { - "id": 1912, + "id": 1909, "keyName": "", "keyNameLocation": "-1:-1:-1", "keyType": { - "id": 1910, + "id": 1907, "name": "address", "nodeType": "ElementaryTypeName", "src": "1667:7:10", @@ -541,7 +541,7 @@ "valueName": "", "valueNameLocation": "-1:-1:-1", "valueType": { - "id": 1911, + "id": 1908, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1678:7:10", @@ -556,12 +556,12 @@ }, { "constant": false, - "id": 1916, + "id": 1913, "mutability": "mutable", "name": "_totalSupply", "nameLocation": "1730:12:10", "nodeType": "VariableDeclaration", - "scope": 2479, + "scope": 2476, "src": "1714:28:10", "stateVariable": true, "storageLocation": "default", @@ -570,7 +570,7 @@ "typeString": "uint256" }, "typeName": { - "id": 1915, + "id": 1912, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1714:7:10", @@ -583,12 +583,12 @@ }, { "constant": false, - "id": 1918, + "id": 1915, "mutability": "mutable", "name": "_name", "nameLocation": "1764:5:10", "nodeType": "VariableDeclaration", - "scope": 2479, + "scope": 2476, "src": "1749:20:10", "stateVariable": true, "storageLocation": "default", @@ -597,7 +597,7 @@ "typeString": "string" }, "typeName": { - "id": 1917, + "id": 1914, "name": "string", "nodeType": "ElementaryTypeName", "src": "1749:6:10", @@ -610,12 +610,12 @@ }, { "constant": false, - "id": 1920, + "id": 1917, "mutability": "mutable", "name": "_symbol", "nameLocation": "1790:7:10", "nodeType": "VariableDeclaration", - "scope": 2479, + "scope": 2476, "src": "1775:22:10", "stateVariable": true, "storageLocation": "default", @@ -624,7 +624,7 @@ "typeString": "string" }, "typeName": { - "id": 1919, + "id": 1916, "name": "string", "nodeType": "ElementaryTypeName", "src": "1775:6:10", @@ -637,23 +637,23 @@ }, { "body": { - "id": 1936, + "id": 1933, "nodeType": "Block", "src": "2036:57:10", "statements": [ { "expression": { - "id": 1930, + "id": 1927, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 1928, + "id": 1925, "name": "_name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1918, + "referencedDeclaration": 1915, "src": "2046:5:10", "typeDescriptions": { "typeIdentifier": "t_string_storage", @@ -663,11 +663,11 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 1929, + "id": 1926, "name": "name_", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1923, + "referencedDeclaration": 1920, "src": "2054:5:10", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", @@ -680,23 +680,23 @@ "typeString": "string storage ref" } }, - "id": 1931, + "id": 1928, "nodeType": "ExpressionStatement", "src": "2046:13:10" }, { "expression": { - "id": 1934, + "id": 1931, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 1932, + "id": 1929, "name": "_symbol", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1920, + "referencedDeclaration": 1917, "src": "2069:7:10", "typeDescriptions": { "typeIdentifier": "t_string_storage", @@ -706,11 +706,11 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 1933, + "id": 1930, "name": "symbol_", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1925, + "referencedDeclaration": 1922, "src": "2079:7:10", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", @@ -723,19 +723,19 @@ "typeString": "string storage ref" } }, - "id": 1935, + "id": 1932, "nodeType": "ExpressionStatement", "src": "2069:17:10" } ] }, "documentation": { - "id": 1921, + "id": 1918, "nodeType": "StructuredDocumentation", "src": "1804:171:10", "text": " @dev Sets the values for {name} and {symbol}.\n All two of these values are immutable: they can only be set once during\n construction." }, - "id": 1937, + "id": 1934, "implemented": true, "kind": "constructor", "modifiers": [], @@ -743,17 +743,17 @@ "nameLocation": "-1:-1:-1", "nodeType": "FunctionDefinition", "parameters": { - "id": 1926, + "id": 1923, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1923, + "id": 1920, "mutability": "mutable", "name": "name_", "nameLocation": "2006:5:10", "nodeType": "VariableDeclaration", - "scope": 1937, + "scope": 1934, "src": "1992:19:10", "stateVariable": false, "storageLocation": "memory", @@ -762,7 +762,7 @@ "typeString": "string" }, "typeName": { - "id": 1922, + "id": 1919, "name": "string", "nodeType": "ElementaryTypeName", "src": "1992:6:10", @@ -775,12 +775,12 @@ }, { "constant": false, - "id": 1925, + "id": 1922, "mutability": "mutable", "name": "symbol_", "nameLocation": "2027:7:10", "nodeType": "VariableDeclaration", - "scope": 1937, + "scope": 1934, "src": "2013:21:10", "stateVariable": false, "storageLocation": "memory", @@ -789,7 +789,7 @@ "typeString": "string" }, "typeName": { - "id": 1924, + "id": 1921, "name": "string", "nodeType": "ElementaryTypeName", "src": "2013:6:10", @@ -804,12 +804,12 @@ "src": "1991:44:10" }, "returnParameters": { - "id": 1927, + "id": 1924, "nodeType": "ParameterList", "parameters": [], "src": "2036:0:10" }, - "scope": 2479, + "scope": 2476, "src": "1980:113:10", "stateMutability": "nonpayable", "virtual": false, @@ -817,41 +817,41 @@ }, { "baseFunctions": [ - 2569 + 2566 ], "body": { - "id": 1946, + "id": 1943, "nodeType": "Block", "src": "2227:29:10", "statements": [ { "expression": { - "id": 1944, + "id": 1941, "name": "_name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1918, + "referencedDeclaration": 1915, "src": "2244:5:10", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" } }, - "functionReturnParameters": 1943, - "id": 1945, + "functionReturnParameters": 1940, + "id": 1942, "nodeType": "Return", "src": "2237:12:10" } ] }, "documentation": { - "id": 1938, + "id": 1935, "nodeType": "StructuredDocumentation", "src": "2099:54:10", "text": " @dev Returns the name of the token." }, "functionSelector": "06fdde03", - "id": 1947, + "id": 1944, "implemented": true, "kind": "function", "modifiers": [], @@ -859,29 +859,29 @@ "nameLocation": "2167:4:10", "nodeType": "FunctionDefinition", "overrides": { - "id": 1940, + "id": 1937, "nodeType": "OverrideSpecifier", "overrides": [], "src": "2194:8:10" }, "parameters": { - "id": 1939, + "id": 1936, "nodeType": "ParameterList", "parameters": [], "src": "2171:2:10" }, "returnParameters": { - "id": 1943, + "id": 1940, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1942, + "id": 1939, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 1947, + "scope": 1944, "src": "2212:13:10", "stateVariable": false, "storageLocation": "memory", @@ -890,7 +890,7 @@ "typeString": "string" }, "typeName": { - "id": 1941, + "id": 1938, "name": "string", "nodeType": "ElementaryTypeName", "src": "2212:6:10", @@ -904,7 +904,7 @@ ], "src": "2211:15:10" }, - "scope": 2479, + "scope": 2476, "src": "2158:98:10", "stateMutability": "view", "virtual": true, @@ -912,41 +912,41 @@ }, { "baseFunctions": [ - 2575 + 2572 ], "body": { - "id": 1956, + "id": 1953, "nodeType": "Block", "src": "2440:31:10", "statements": [ { "expression": { - "id": 1954, + "id": 1951, "name": "_symbol", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1920, + "referencedDeclaration": 1917, "src": "2457:7:10", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" } }, - "functionReturnParameters": 1953, - "id": 1955, + "functionReturnParameters": 1950, + "id": 1952, "nodeType": "Return", "src": "2450:14:10" } ] }, "documentation": { - "id": 1948, + "id": 1945, "nodeType": "StructuredDocumentation", "src": "2262:102:10", "text": " @dev Returns the symbol of the token, usually a shorter version of the\n name." }, "functionSelector": "95d89b41", - "id": 1957, + "id": 1954, "implemented": true, "kind": "function", "modifiers": [], @@ -954,29 +954,29 @@ "nameLocation": "2378:6:10", "nodeType": "FunctionDefinition", "overrides": { - "id": 1950, + "id": 1947, "nodeType": "OverrideSpecifier", "overrides": [], "src": "2407:8:10" }, "parameters": { - "id": 1949, + "id": 1946, "nodeType": "ParameterList", "parameters": [], "src": "2384:2:10" }, "returnParameters": { - "id": 1953, + "id": 1950, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1952, + "id": 1949, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 1957, + "scope": 1954, "src": "2425:13:10", "stateVariable": false, "storageLocation": "memory", @@ -985,7 +985,7 @@ "typeString": "string" }, "typeName": { - "id": 1951, + "id": 1948, "name": "string", "nodeType": "ElementaryTypeName", "src": "2425:6:10", @@ -999,7 +999,7 @@ ], "src": "2424:15:10" }, - "scope": 2479, + "scope": 2476, "src": "2369:102:10", "stateMutability": "view", "virtual": true, @@ -1007,17 +1007,17 @@ }, { "baseFunctions": [ - 2581 + 2578 ], "body": { - "id": 1966, + "id": 1963, "nodeType": "Block", "src": "3169:26:10", "statements": [ { "expression": { "hexValue": "3138", - "id": 1964, + "id": 1961, "isConstant": false, "isLValue": false, "isPure": true, @@ -1031,21 +1031,21 @@ }, "value": "18" }, - "functionReturnParameters": 1963, - "id": 1965, + "functionReturnParameters": 1960, + "id": 1962, "nodeType": "Return", "src": "3179:9:10" } ] }, "documentation": { - "id": 1958, + "id": 1955, "nodeType": "StructuredDocumentation", "src": "2477:622:10", "text": " @dev Returns the number of decimals used to get its user representation.\n For example, if `decimals` equals `2`, a balance of `505` tokens should\n be displayed to a user as `5.05` (`505 / 10 ** 2`).\n Tokens usually opt for a value of 18, imitating the relationship between\n Ether and Wei. This is the default value returned by this function, unless\n it's overridden.\n NOTE: This information is only used for _display_ purposes: it in\n no way affects any of the arithmetic of the contract, including\n {IERC20-balanceOf} and {IERC20-transfer}." }, "functionSelector": "313ce567", - "id": 1967, + "id": 1964, "implemented": true, "kind": "function", "modifiers": [], @@ -1053,29 +1053,29 @@ "nameLocation": "3113:8:10", "nodeType": "FunctionDefinition", "overrides": { - "id": 1960, + "id": 1957, "nodeType": "OverrideSpecifier", "overrides": [], "src": "3144:8:10" }, "parameters": { - "id": 1959, + "id": 1956, "nodeType": "ParameterList", "parameters": [], "src": "3121:2:10" }, "returnParameters": { - "id": 1963, + "id": 1960, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1962, + "id": 1959, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 1967, + "scope": 1964, "src": "3162:5:10", "stateVariable": false, "storageLocation": "default", @@ -1084,7 +1084,7 @@ "typeString": "uint8" }, "typeName": { - "id": 1961, + "id": 1958, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "3162:5:10", @@ -1098,7 +1098,7 @@ ], "src": "3161:7:10" }, - "scope": 2479, + "scope": 2476, "src": "3104:91:10", "stateMutability": "view", "virtual": true, @@ -1106,41 +1106,41 @@ }, { "baseFunctions": [ - 2506 + 2503 ], "body": { - "id": 1976, + "id": 1973, "nodeType": "Block", "src": "3325:36:10", "statements": [ { "expression": { - "id": 1974, + "id": 1971, "name": "_totalSupply", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1916, + "referencedDeclaration": 1913, "src": "3342:12:10", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1973, - "id": 1975, + "functionReturnParameters": 1970, + "id": 1972, "nodeType": "Return", "src": "3335:19:10" } ] }, "documentation": { - "id": 1968, + "id": 1965, "nodeType": "StructuredDocumentation", "src": "3201:49:10", "text": " @dev See {IERC20-totalSupply}." }, "functionSelector": "18160ddd", - "id": 1977, + "id": 1974, "implemented": true, "kind": "function", "modifiers": [], @@ -1148,29 +1148,29 @@ "nameLocation": "3264:11:10", "nodeType": "FunctionDefinition", "overrides": { - "id": 1970, + "id": 1967, "nodeType": "OverrideSpecifier", "overrides": [], "src": "3298:8:10" }, "parameters": { - "id": 1969, + "id": 1966, "nodeType": "ParameterList", "parameters": [], "src": "3275:2:10" }, "returnParameters": { - "id": 1973, + "id": 1970, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1972, + "id": 1969, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 1977, + "scope": 1974, "src": "3316:7:10", "stateVariable": false, "storageLocation": "default", @@ -1179,7 +1179,7 @@ "typeString": "uint256" }, "typeName": { - "id": 1971, + "id": 1968, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "3316:7:10", @@ -1193,7 +1193,7 @@ ], "src": "3315:9:10" }, - "scope": 2479, + "scope": 2476, "src": "3255:106:10", "stateMutability": "view", "virtual": true, @@ -1201,34 +1201,34 @@ }, { "baseFunctions": [ - 2514 + 2511 ], "body": { - "id": 1990, + "id": 1987, "nodeType": "Block", "src": "3502:42:10", "statements": [ { "expression": { "baseExpression": { - "id": 1986, + "id": 1983, "name": "_balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1908, + "referencedDeclaration": 1905, "src": "3519:9:10", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 1988, + "id": 1985, "indexExpression": { - "id": 1987, + "id": 1984, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1980, + "referencedDeclaration": 1977, "src": "3529:7:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1246,21 +1246,21 @@ "typeString": "uint256" } }, - "functionReturnParameters": 1985, - "id": 1989, + "functionReturnParameters": 1982, + "id": 1986, "nodeType": "Return", "src": "3512:25:10" } ] }, "documentation": { - "id": 1978, + "id": 1975, "nodeType": "StructuredDocumentation", "src": "3367:47:10", "text": " @dev See {IERC20-balanceOf}." }, "functionSelector": "70a08231", - "id": 1991, + "id": 1988, "implemented": true, "kind": "function", "modifiers": [], @@ -1268,23 +1268,23 @@ "nameLocation": "3428:9:10", "nodeType": "FunctionDefinition", "overrides": { - "id": 1982, + "id": 1979, "nodeType": "OverrideSpecifier", "overrides": [], "src": "3475:8:10" }, "parameters": { - "id": 1981, + "id": 1978, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1980, + "id": 1977, "mutability": "mutable", "name": "account", "nameLocation": "3446:7:10", "nodeType": "VariableDeclaration", - "scope": 1991, + "scope": 1988, "src": "3438:15:10", "stateVariable": false, "storageLocation": "default", @@ -1293,7 +1293,7 @@ "typeString": "address" }, "typeName": { - "id": 1979, + "id": 1976, "name": "address", "nodeType": "ElementaryTypeName", "src": "3438:7:10", @@ -1309,17 +1309,17 @@ "src": "3437:17:10" }, "returnParameters": { - "id": 1985, + "id": 1982, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1984, + "id": 1981, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 1991, + "scope": 1988, "src": "3493:7:10", "stateVariable": false, "storageLocation": "default", @@ -1328,7 +1328,7 @@ "typeString": "uint256" }, "typeName": { - "id": 1983, + "id": 1980, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "3493:7:10", @@ -1342,7 +1342,7 @@ ], "src": "3492:9:10" }, - "scope": 2479, + "scope": 2476, "src": "3419:125:10", "stateMutability": "view", "virtual": true, @@ -1350,26 +1350,26 @@ }, { "baseFunctions": [ - 2524 + 2521 ], "body": { - "id": 2015, + "id": 2012, "nodeType": "Block", "src": "3825:104:10", "statements": [ { "assignments": [ - 2003 + 2000 ], "declarations": [ { "constant": false, - "id": 2003, + "id": 2000, "mutability": "mutable", "name": "owner", "nameLocation": "3843:5:10", "nodeType": "VariableDeclaration", - "scope": 2015, + "scope": 2012, "src": "3835:13:10", "stateVariable": false, "storageLocation": "default", @@ -1378,7 +1378,7 @@ "typeString": "address" }, "typeName": { - "id": 2002, + "id": 1999, "name": "address", "nodeType": "ElementaryTypeName", "src": "3835:7:10", @@ -1391,23 +1391,23 @@ "visibility": "internal" } ], - "id": 2006, + "id": 2003, "initialValue": { "arguments": [], "expression": { "argumentTypes": [], - "id": 2004, + "id": 2001, "name": "_msgSender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2594, + "referencedDeclaration": 2591, "src": "3851:10:10", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", "typeString": "function () view returns (address)" } }, - "id": 2005, + "id": 2002, "isConstant": false, "isLValue": false, "isPure": false, @@ -1430,11 +1430,11 @@ "expression": { "arguments": [ { - "id": 2008, + "id": 2005, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2003, + "referencedDeclaration": 2000, "src": "3883:5:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1442,11 +1442,11 @@ } }, { - "id": 2009, + "id": 2006, "name": "to", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1994, + "referencedDeclaration": 1991, "src": "3890:2:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1454,11 +1454,11 @@ } }, { - "id": 2010, + "id": 2007, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1996, + "referencedDeclaration": 1993, "src": "3894:6:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1481,18 +1481,18 @@ "typeString": "uint256" } ], - "id": 2007, + "id": 2004, "name": "_transfer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2239, + "referencedDeclaration": 2236, "src": "3873:9:10", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 2011, + "id": 2008, "isConstant": false, "isLValue": false, "isPure": false, @@ -1508,14 +1508,14 @@ "typeString": "tuple()" } }, - "id": 2012, + "id": 2009, "nodeType": "ExpressionStatement", "src": "3873:28:10" }, { "expression": { "hexValue": "74727565", - "id": 2013, + "id": 2010, "isConstant": false, "isLValue": false, "isPure": true, @@ -1529,21 +1529,21 @@ }, "value": "true" }, - "functionReturnParameters": 2001, - "id": 2014, + "functionReturnParameters": 1998, + "id": 2011, "nodeType": "Return", "src": "3911:11:10" } ] }, "documentation": { - "id": 1992, + "id": 1989, "nodeType": "StructuredDocumentation", "src": "3550:185:10", "text": " @dev See {IERC20-transfer}.\n Requirements:\n - `to` cannot be the zero address.\n - the caller must have a balance of at least `amount`." }, "functionSelector": "a9059cbb", - "id": 2016, + "id": 2013, "implemented": true, "kind": "function", "modifiers": [], @@ -1551,23 +1551,23 @@ "nameLocation": "3749:8:10", "nodeType": "FunctionDefinition", "overrides": { - "id": 1998, + "id": 1995, "nodeType": "OverrideSpecifier", "overrides": [], "src": "3801:8:10" }, "parameters": { - "id": 1997, + "id": 1994, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1994, + "id": 1991, "mutability": "mutable", "name": "to", "nameLocation": "3766:2:10", "nodeType": "VariableDeclaration", - "scope": 2016, + "scope": 2013, "src": "3758:10:10", "stateVariable": false, "storageLocation": "default", @@ -1576,7 +1576,7 @@ "typeString": "address" }, "typeName": { - "id": 1993, + "id": 1990, "name": "address", "nodeType": "ElementaryTypeName", "src": "3758:7:10", @@ -1590,12 +1590,12 @@ }, { "constant": false, - "id": 1996, + "id": 1993, "mutability": "mutable", "name": "amount", "nameLocation": "3778:6:10", "nodeType": "VariableDeclaration", - "scope": 2016, + "scope": 2013, "src": "3770:14:10", "stateVariable": false, "storageLocation": "default", @@ -1604,7 +1604,7 @@ "typeString": "uint256" }, "typeName": { - "id": 1995, + "id": 1992, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "3770:7:10", @@ -1619,17 +1619,17 @@ "src": "3757:28:10" }, "returnParameters": { - "id": 2001, + "id": 1998, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2000, + "id": 1997, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 2016, + "scope": 2013, "src": "3819:4:10", "stateVariable": false, "storageLocation": "default", @@ -1638,7 +1638,7 @@ "typeString": "bool" }, "typeName": { - "id": 1999, + "id": 1996, "name": "bool", "nodeType": "ElementaryTypeName", "src": "3819:4:10", @@ -1652,7 +1652,7 @@ ], "src": "3818:6:10" }, - "scope": 2479, + "scope": 2476, "src": "3740:189:10", "stateMutability": "nonpayable", "virtual": true, @@ -1660,10 +1660,10 @@ }, { "baseFunctions": [ - 2534 + 2531 ], "body": { - "id": 2033, + "id": 2030, "nodeType": "Block", "src": "4085:51:10", "statements": [ @@ -1671,24 +1671,24 @@ "expression": { "baseExpression": { "baseExpression": { - "id": 2027, + "id": 2024, "name": "_allowances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1914, + "referencedDeclaration": 1911, "src": "4102:11:10", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", "typeString": "mapping(address => mapping(address => uint256))" } }, - "id": 2029, + "id": 2026, "indexExpression": { - "id": 2028, + "id": 2025, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2019, + "referencedDeclaration": 2016, "src": "4114:5:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1706,13 +1706,13 @@ "typeString": "mapping(address => uint256)" } }, - "id": 2031, + "id": 2028, "indexExpression": { - "id": 2030, + "id": 2027, "name": "spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2021, + "referencedDeclaration": 2018, "src": "4121:7:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1730,21 +1730,21 @@ "typeString": "uint256" } }, - "functionReturnParameters": 2026, - "id": 2032, + "functionReturnParameters": 2023, + "id": 2029, "nodeType": "Return", "src": "4095:34:10" } ] }, "documentation": { - "id": 2017, + "id": 2014, "nodeType": "StructuredDocumentation", "src": "3935:47:10", "text": " @dev See {IERC20-allowance}." }, "functionSelector": "dd62ed3e", - "id": 2034, + "id": 2031, "implemented": true, "kind": "function", "modifiers": [], @@ -1752,23 +1752,23 @@ "nameLocation": "3996:9:10", "nodeType": "FunctionDefinition", "overrides": { - "id": 2023, + "id": 2020, "nodeType": "OverrideSpecifier", "overrides": [], "src": "4058:8:10" }, "parameters": { - "id": 2022, + "id": 2019, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2019, + "id": 2016, "mutability": "mutable", "name": "owner", "nameLocation": "4014:5:10", "nodeType": "VariableDeclaration", - "scope": 2034, + "scope": 2031, "src": "4006:13:10", "stateVariable": false, "storageLocation": "default", @@ -1777,7 +1777,7 @@ "typeString": "address" }, "typeName": { - "id": 2018, + "id": 2015, "name": "address", "nodeType": "ElementaryTypeName", "src": "4006:7:10", @@ -1791,12 +1791,12 @@ }, { "constant": false, - "id": 2021, + "id": 2018, "mutability": "mutable", "name": "spender", "nameLocation": "4029:7:10", "nodeType": "VariableDeclaration", - "scope": 2034, + "scope": 2031, "src": "4021:15:10", "stateVariable": false, "storageLocation": "default", @@ -1805,7 +1805,7 @@ "typeString": "address" }, "typeName": { - "id": 2020, + "id": 2017, "name": "address", "nodeType": "ElementaryTypeName", "src": "4021:7:10", @@ -1821,17 +1821,17 @@ "src": "4005:32:10" }, "returnParameters": { - "id": 2026, + "id": 2023, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2025, + "id": 2022, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 2034, + "scope": 2031, "src": "4076:7:10", "stateVariable": false, "storageLocation": "default", @@ -1840,7 +1840,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2024, + "id": 2021, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4076:7:10", @@ -1854,7 +1854,7 @@ ], "src": "4075:9:10" }, - "scope": 2479, + "scope": 2476, "src": "3987:149:10", "stateMutability": "view", "virtual": true, @@ -1862,26 +1862,26 @@ }, { "baseFunctions": [ - 2544 + 2541 ], "body": { - "id": 2058, + "id": 2055, "nodeType": "Block", "src": "4533:108:10", "statements": [ { "assignments": [ - 2046 + 2043 ], "declarations": [ { "constant": false, - "id": 2046, + "id": 2043, "mutability": "mutable", "name": "owner", "nameLocation": "4551:5:10", "nodeType": "VariableDeclaration", - "scope": 2058, + "scope": 2055, "src": "4543:13:10", "stateVariable": false, "storageLocation": "default", @@ -1890,7 +1890,7 @@ "typeString": "address" }, "typeName": { - "id": 2045, + "id": 2042, "name": "address", "nodeType": "ElementaryTypeName", "src": "4543:7:10", @@ -1903,23 +1903,23 @@ "visibility": "internal" } ], - "id": 2049, + "id": 2046, "initialValue": { "arguments": [], "expression": { "argumentTypes": [], - "id": 2047, + "id": 2044, "name": "_msgSender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2594, + "referencedDeclaration": 2591, "src": "4559:10:10", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", "typeString": "function () view returns (address)" } }, - "id": 2048, + "id": 2045, "isConstant": false, "isLValue": false, "isPure": false, @@ -1942,11 +1942,11 @@ "expression": { "arguments": [ { - "id": 2051, + "id": 2048, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2046, + "referencedDeclaration": 2043, "src": "4590:5:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1954,11 +1954,11 @@ } }, { - "id": 2052, + "id": 2049, "name": "spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2037, + "referencedDeclaration": 2034, "src": "4597:7:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1966,11 +1966,11 @@ } }, { - "id": 2053, + "id": 2050, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2039, + "referencedDeclaration": 2036, "src": "4606:6:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1993,18 +1993,18 @@ "typeString": "uint256" } ], - "id": 2050, + "id": 2047, "name": "_approve", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2413, + "referencedDeclaration": 2410, "src": "4581:8:10", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 2054, + "id": 2051, "isConstant": false, "isLValue": false, "isPure": false, @@ -2020,14 +2020,14 @@ "typeString": "tuple()" } }, - "id": 2055, + "id": 2052, "nodeType": "ExpressionStatement", "src": "4581:32:10" }, { "expression": { "hexValue": "74727565", - "id": 2056, + "id": 2053, "isConstant": false, "isLValue": false, "isPure": true, @@ -2041,21 +2041,21 @@ }, "value": "true" }, - "functionReturnParameters": 2044, - "id": 2057, + "functionReturnParameters": 2041, + "id": 2054, "nodeType": "Return", "src": "4623:11:10" } ] }, "documentation": { - "id": 2035, + "id": 2032, "nodeType": "StructuredDocumentation", "src": "4142:297:10", "text": " @dev See {IERC20-approve}.\n NOTE: If `amount` is the maximum `uint256`, the allowance is not updated on\n `transferFrom`. This is semantically equivalent to an infinite approval.\n Requirements:\n - `spender` cannot be the zero address." }, "functionSelector": "095ea7b3", - "id": 2059, + "id": 2056, "implemented": true, "kind": "function", "modifiers": [], @@ -2063,23 +2063,23 @@ "nameLocation": "4453:7:10", "nodeType": "FunctionDefinition", "overrides": { - "id": 2041, + "id": 2038, "nodeType": "OverrideSpecifier", "overrides": [], "src": "4509:8:10" }, "parameters": { - "id": 2040, + "id": 2037, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2037, + "id": 2034, "mutability": "mutable", "name": "spender", "nameLocation": "4469:7:10", "nodeType": "VariableDeclaration", - "scope": 2059, + "scope": 2056, "src": "4461:15:10", "stateVariable": false, "storageLocation": "default", @@ -2088,7 +2088,7 @@ "typeString": "address" }, "typeName": { - "id": 2036, + "id": 2033, "name": "address", "nodeType": "ElementaryTypeName", "src": "4461:7:10", @@ -2102,12 +2102,12 @@ }, { "constant": false, - "id": 2039, + "id": 2036, "mutability": "mutable", "name": "amount", "nameLocation": "4486:6:10", "nodeType": "VariableDeclaration", - "scope": 2059, + "scope": 2056, "src": "4478:14:10", "stateVariable": false, "storageLocation": "default", @@ -2116,7 +2116,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2038, + "id": 2035, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4478:7:10", @@ -2131,17 +2131,17 @@ "src": "4460:33:10" }, "returnParameters": { - "id": 2044, + "id": 2041, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2043, + "id": 2040, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 2059, + "scope": 2056, "src": "4527:4:10", "stateVariable": false, "storageLocation": "default", @@ -2150,7 +2150,7 @@ "typeString": "bool" }, "typeName": { - "id": 2042, + "id": 2039, "name": "bool", "nodeType": "ElementaryTypeName", "src": "4527:4:10", @@ -2164,7 +2164,7 @@ ], "src": "4526:6:10" }, - "scope": 2479, + "scope": 2476, "src": "4444:197:10", "stateMutability": "nonpayable", "virtual": true, @@ -2172,26 +2172,26 @@ }, { "baseFunctions": [ - 2556 + 2553 ], "body": { - "id": 2091, + "id": 2088, "nodeType": "Block", "src": "5306:153:10", "statements": [ { "assignments": [ - 2073 + 2070 ], "declarations": [ { "constant": false, - "id": 2073, + "id": 2070, "mutability": "mutable", "name": "spender", "nameLocation": "5324:7:10", "nodeType": "VariableDeclaration", - "scope": 2091, + "scope": 2088, "src": "5316:15:10", "stateVariable": false, "storageLocation": "default", @@ -2200,7 +2200,7 @@ "typeString": "address" }, "typeName": { - "id": 2072, + "id": 2069, "name": "address", "nodeType": "ElementaryTypeName", "src": "5316:7:10", @@ -2213,23 +2213,23 @@ "visibility": "internal" } ], - "id": 2076, + "id": 2073, "initialValue": { "arguments": [], "expression": { "argumentTypes": [], - "id": 2074, + "id": 2071, "name": "_msgSender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2594, + "referencedDeclaration": 2591, "src": "5334:10:10", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", "typeString": "function () view returns (address)" } }, - "id": 2075, + "id": 2072, "isConstant": false, "isLValue": false, "isPure": false, @@ -2252,11 +2252,11 @@ "expression": { "arguments": [ { - "id": 2078, + "id": 2075, "name": "from", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2062, + "referencedDeclaration": 2059, "src": "5372:4:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2264,11 +2264,11 @@ } }, { - "id": 2079, + "id": 2076, "name": "spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2073, + "referencedDeclaration": 2070, "src": "5378:7:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2276,11 +2276,11 @@ } }, { - "id": 2080, + "id": 2077, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2066, + "referencedDeclaration": 2063, "src": "5387:6:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -2303,18 +2303,18 @@ "typeString": "uint256" } ], - "id": 2077, + "id": 2074, "name": "_spendAllowance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2456, + "referencedDeclaration": 2453, "src": "5356:15:10", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 2081, + "id": 2078, "isConstant": false, "isLValue": false, "isPure": false, @@ -2330,7 +2330,7 @@ "typeString": "tuple()" } }, - "id": 2082, + "id": 2079, "nodeType": "ExpressionStatement", "src": "5356:38:10" }, @@ -2338,11 +2338,11 @@ "expression": { "arguments": [ { - "id": 2084, + "id": 2081, "name": "from", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2062, + "referencedDeclaration": 2059, "src": "5414:4:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2350,11 +2350,11 @@ } }, { - "id": 2085, + "id": 2082, "name": "to", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2064, + "referencedDeclaration": 2061, "src": "5420:2:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2362,11 +2362,11 @@ } }, { - "id": 2086, + "id": 2083, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2066, + "referencedDeclaration": 2063, "src": "5424:6:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -2389,18 +2389,18 @@ "typeString": "uint256" } ], - "id": 2083, + "id": 2080, "name": "_transfer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2239, + "referencedDeclaration": 2236, "src": "5404:9:10", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 2087, + "id": 2084, "isConstant": false, "isLValue": false, "isPure": false, @@ -2416,14 +2416,14 @@ "typeString": "tuple()" } }, - "id": 2088, + "id": 2085, "nodeType": "ExpressionStatement", "src": "5404:27:10" }, { "expression": { "hexValue": "74727565", - "id": 2089, + "id": 2086, "isConstant": false, "isLValue": false, "isPure": true, @@ -2437,21 +2437,21 @@ }, "value": "true" }, - "functionReturnParameters": 2071, - "id": 2090, + "functionReturnParameters": 2068, + "id": 2087, "nodeType": "Return", "src": "5441:11:10" } ] }, "documentation": { - "id": 2060, + "id": 2057, "nodeType": "StructuredDocumentation", "src": "4647:551:10", "text": " @dev See {IERC20-transferFrom}.\n Emits an {Approval} event indicating the updated allowance. This is not\n required by the EIP. See the note at the beginning of {ERC20}.\n NOTE: Does not update the allowance if the current allowance\n is the maximum `uint256`.\n Requirements:\n - `from` and `to` cannot be the zero address.\n - `from` must have a balance of at least `amount`.\n - the caller must have allowance for ``from``'s tokens of at least\n `amount`." }, "functionSelector": "23b872dd", - "id": 2092, + "id": 2089, "implemented": true, "kind": "function", "modifiers": [], @@ -2459,23 +2459,23 @@ "nameLocation": "5212:12:10", "nodeType": "FunctionDefinition", "overrides": { - "id": 2068, + "id": 2065, "nodeType": "OverrideSpecifier", "overrides": [], "src": "5282:8:10" }, "parameters": { - "id": 2067, + "id": 2064, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2062, + "id": 2059, "mutability": "mutable", "name": "from", "nameLocation": "5233:4:10", "nodeType": "VariableDeclaration", - "scope": 2092, + "scope": 2089, "src": "5225:12:10", "stateVariable": false, "storageLocation": "default", @@ -2484,7 +2484,7 @@ "typeString": "address" }, "typeName": { - "id": 2061, + "id": 2058, "name": "address", "nodeType": "ElementaryTypeName", "src": "5225:7:10", @@ -2498,12 +2498,12 @@ }, { "constant": false, - "id": 2064, + "id": 2061, "mutability": "mutable", "name": "to", "nameLocation": "5247:2:10", "nodeType": "VariableDeclaration", - "scope": 2092, + "scope": 2089, "src": "5239:10:10", "stateVariable": false, "storageLocation": "default", @@ -2512,7 +2512,7 @@ "typeString": "address" }, "typeName": { - "id": 2063, + "id": 2060, "name": "address", "nodeType": "ElementaryTypeName", "src": "5239:7:10", @@ -2526,12 +2526,12 @@ }, { "constant": false, - "id": 2066, + "id": 2063, "mutability": "mutable", "name": "amount", "nameLocation": "5259:6:10", "nodeType": "VariableDeclaration", - "scope": 2092, + "scope": 2089, "src": "5251:14:10", "stateVariable": false, "storageLocation": "default", @@ -2540,7 +2540,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2065, + "id": 2062, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "5251:7:10", @@ -2555,17 +2555,17 @@ "src": "5224:42:10" }, "returnParameters": { - "id": 2071, + "id": 2068, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2070, + "id": 2067, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 2092, + "scope": 2089, "src": "5300:4:10", "stateVariable": false, "storageLocation": "default", @@ -2574,7 +2574,7 @@ "typeString": "bool" }, "typeName": { - "id": 2069, + "id": 2066, "name": "bool", "nodeType": "ElementaryTypeName", "src": "5300:4:10", @@ -2588,7 +2588,7 @@ ], "src": "5299:6:10" }, - "scope": 2479, + "scope": 2476, "src": "5203:256:10", "stateMutability": "nonpayable", "virtual": true, @@ -2596,23 +2596,23 @@ }, { "body": { - "id": 2120, + "id": 2117, "nodeType": "Block", "src": "5948:140:10", "statements": [ { "assignments": [ - 2103 + 2100 ], "declarations": [ { "constant": false, - "id": 2103, + "id": 2100, "mutability": "mutable", "name": "owner", "nameLocation": "5966:5:10", "nodeType": "VariableDeclaration", - "scope": 2120, + "scope": 2117, "src": "5958:13:10", "stateVariable": false, "storageLocation": "default", @@ -2621,7 +2621,7 @@ "typeString": "address" }, "typeName": { - "id": 2102, + "id": 2099, "name": "address", "nodeType": "ElementaryTypeName", "src": "5958:7:10", @@ -2634,23 +2634,23 @@ "visibility": "internal" } ], - "id": 2106, + "id": 2103, "initialValue": { "arguments": [], "expression": { "argumentTypes": [], - "id": 2104, + "id": 2101, "name": "_msgSender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2594, + "referencedDeclaration": 2591, "src": "5974:10:10", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", "typeString": "function () view returns (address)" } }, - "id": 2105, + "id": 2102, "isConstant": false, "isLValue": false, "isPure": false, @@ -2673,11 +2673,11 @@ "expression": { "arguments": [ { - "id": 2108, + "id": 2105, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2103, + "referencedDeclaration": 2100, "src": "6005:5:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2685,11 +2685,11 @@ } }, { - "id": 2109, + "id": 2106, "name": "spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2095, + "referencedDeclaration": 2092, "src": "6012:7:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2701,7 +2701,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2115, + "id": 2112, "isConstant": false, "isLValue": false, "isPure": false, @@ -2709,11 +2709,11 @@ "leftExpression": { "arguments": [ { - "id": 2111, + "id": 2108, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2103, + "referencedDeclaration": 2100, "src": "6031:5:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2721,11 +2721,11 @@ } }, { - "id": 2112, + "id": 2109, "name": "spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2095, + "referencedDeclaration": 2092, "src": "6038:7:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2744,18 +2744,18 @@ "typeString": "address" } ], - "id": 2110, + "id": 2107, "name": "allowance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2034, + "referencedDeclaration": 2031, "src": "6021:9:10", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$_t_address_$returns$_t_uint256_$", "typeString": "function (address,address) view returns (uint256)" } }, - "id": 2113, + "id": 2110, "isConstant": false, "isLValue": false, "isPure": false, @@ -2774,11 +2774,11 @@ "nodeType": "BinaryOperation", "operator": "+", "rightExpression": { - "id": 2114, + "id": 2111, "name": "addedValue", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2097, + "referencedDeclaration": 2094, "src": "6049:10:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -2807,18 +2807,18 @@ "typeString": "uint256" } ], - "id": 2107, + "id": 2104, "name": "_approve", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2413, + "referencedDeclaration": 2410, "src": "5996:8:10", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 2116, + "id": 2113, "isConstant": false, "isLValue": false, "isPure": false, @@ -2834,14 +2834,14 @@ "typeString": "tuple()" } }, - "id": 2117, + "id": 2114, "nodeType": "ExpressionStatement", "src": "5996:64:10" }, { "expression": { "hexValue": "74727565", - "id": 2118, + "id": 2115, "isConstant": false, "isLValue": false, "isPure": true, @@ -2855,21 +2855,21 @@ }, "value": "true" }, - "functionReturnParameters": 2101, - "id": 2119, + "functionReturnParameters": 2098, + "id": 2116, "nodeType": "Return", "src": "6070:11:10" } ] }, "documentation": { - "id": 2093, + "id": 2090, "nodeType": "StructuredDocumentation", "src": "5465:384:10", "text": " @dev Atomically increases the allowance granted to `spender` by the caller.\n This is an alternative to {approve} that can be used as a mitigation for\n problems described in {IERC20-approve}.\n Emits an {Approval} event indicating the updated allowance.\n Requirements:\n - `spender` cannot be the zero address." }, "functionSelector": "39509351", - "id": 2121, + "id": 2118, "implemented": true, "kind": "function", "modifiers": [], @@ -2877,17 +2877,17 @@ "nameLocation": "5863:17:10", "nodeType": "FunctionDefinition", "parameters": { - "id": 2098, + "id": 2095, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2095, + "id": 2092, "mutability": "mutable", "name": "spender", "nameLocation": "5889:7:10", "nodeType": "VariableDeclaration", - "scope": 2121, + "scope": 2118, "src": "5881:15:10", "stateVariable": false, "storageLocation": "default", @@ -2896,7 +2896,7 @@ "typeString": "address" }, "typeName": { - "id": 2094, + "id": 2091, "name": "address", "nodeType": "ElementaryTypeName", "src": "5881:7:10", @@ -2910,12 +2910,12 @@ }, { "constant": false, - "id": 2097, + "id": 2094, "mutability": "mutable", "name": "addedValue", "nameLocation": "5906:10:10", "nodeType": "VariableDeclaration", - "scope": 2121, + "scope": 2118, "src": "5898:18:10", "stateVariable": false, "storageLocation": "default", @@ -2924,7 +2924,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2096, + "id": 2093, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "5898:7:10", @@ -2939,17 +2939,17 @@ "src": "5880:37:10" }, "returnParameters": { - "id": 2101, + "id": 2098, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2100, + "id": 2097, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 2121, + "scope": 2118, "src": "5942:4:10", "stateVariable": false, "storageLocation": "default", @@ -2958,7 +2958,7 @@ "typeString": "bool" }, "typeName": { - "id": 2099, + "id": 2096, "name": "bool", "nodeType": "ElementaryTypeName", "src": "5942:4:10", @@ -2972,7 +2972,7 @@ ], "src": "5941:6:10" }, - "scope": 2479, + "scope": 2476, "src": "5854:234:10", "stateMutability": "nonpayable", "virtual": true, @@ -2980,23 +2980,23 @@ }, { "body": { - "id": 2161, + "id": 2158, "nodeType": "Block", "src": "6674:328:10", "statements": [ { "assignments": [ - 2132 + 2129 ], "declarations": [ { "constant": false, - "id": 2132, + "id": 2129, "mutability": "mutable", "name": "owner", "nameLocation": "6692:5:10", "nodeType": "VariableDeclaration", - "scope": 2161, + "scope": 2158, "src": "6684:13:10", "stateVariable": false, "storageLocation": "default", @@ -3005,7 +3005,7 @@ "typeString": "address" }, "typeName": { - "id": 2131, + "id": 2128, "name": "address", "nodeType": "ElementaryTypeName", "src": "6684:7:10", @@ -3018,23 +3018,23 @@ "visibility": "internal" } ], - "id": 2135, + "id": 2132, "initialValue": { "arguments": [], "expression": { "argumentTypes": [], - "id": 2133, + "id": 2130, "name": "_msgSender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2594, + "referencedDeclaration": 2591, "src": "6700:10:10", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", "typeString": "function () view returns (address)" } }, - "id": 2134, + "id": 2131, "isConstant": false, "isLValue": false, "isPure": false, @@ -3055,17 +3055,17 @@ }, { "assignments": [ - 2137 + 2134 ], "declarations": [ { "constant": false, - "id": 2137, + "id": 2134, "mutability": "mutable", "name": "currentAllowance", "nameLocation": "6730:16:10", "nodeType": "VariableDeclaration", - "scope": 2161, + "scope": 2158, "src": "6722:24:10", "stateVariable": false, "storageLocation": "default", @@ -3074,7 +3074,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2136, + "id": 2133, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "6722:7:10", @@ -3086,15 +3086,15 @@ "visibility": "internal" } ], - "id": 2142, + "id": 2139, "initialValue": { "arguments": [ { - "id": 2139, + "id": 2136, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2132, + "referencedDeclaration": 2129, "src": "6759:5:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3102,11 +3102,11 @@ } }, { - "id": 2140, + "id": 2137, "name": "spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2124, + "referencedDeclaration": 2121, "src": "6766:7:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3125,18 +3125,18 @@ "typeString": "address" } ], - "id": 2138, + "id": 2135, "name": "allowance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2034, + "referencedDeclaration": 2031, "src": "6749:9:10", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$_t_address_$returns$_t_uint256_$", "typeString": "function (address,address) view returns (uint256)" } }, - "id": 2141, + "id": 2138, "isConstant": false, "isLValue": false, "isPure": false, @@ -3163,17 +3163,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2146, + "id": 2143, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 2144, + "id": 2141, "name": "currentAllowance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2137, + "referencedDeclaration": 2134, "src": "6792:16:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -3183,11 +3183,11 @@ "nodeType": "BinaryOperation", "operator": ">=", "rightExpression": { - "id": 2145, + "id": 2142, "name": "subtractedValue", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2126, + "referencedDeclaration": 2123, "src": "6812:15:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -3202,7 +3202,7 @@ }, { "hexValue": "45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726f", - "id": 2147, + "id": 2144, "isConstant": false, "isLValue": false, "isPure": true, @@ -3228,7 +3228,7 @@ "typeString": "literal_string \"ERC20: decreased allowance below zero\"" } ], - "id": 2143, + "id": 2140, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -3242,7 +3242,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 2148, + "id": 2145, "isConstant": false, "isLValue": false, "isPure": false, @@ -3258,12 +3258,12 @@ "typeString": "tuple()" } }, - "id": 2149, + "id": 2146, "nodeType": "ExpressionStatement", "src": "6784:85:10" }, { - "id": 2158, + "id": 2155, "nodeType": "UncheckedBlock", "src": "6879:95:10", "statements": [ @@ -3271,11 +3271,11 @@ "expression": { "arguments": [ { - "id": 2151, + "id": 2148, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2132, + "referencedDeclaration": 2129, "src": "6912:5:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3283,11 +3283,11 @@ } }, { - "id": 2152, + "id": 2149, "name": "spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2124, + "referencedDeclaration": 2121, "src": "6919:7:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3299,17 +3299,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2155, + "id": 2152, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 2153, + "id": 2150, "name": "currentAllowance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2137, + "referencedDeclaration": 2134, "src": "6928:16:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -3319,11 +3319,11 @@ "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { - "id": 2154, + "id": 2151, "name": "subtractedValue", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2126, + "referencedDeclaration": 2123, "src": "6947:15:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -3352,18 +3352,18 @@ "typeString": "uint256" } ], - "id": 2150, + "id": 2147, "name": "_approve", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2413, + "referencedDeclaration": 2410, "src": "6903:8:10", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 2156, + "id": 2153, "isConstant": false, "isLValue": false, "isPure": false, @@ -3379,7 +3379,7 @@ "typeString": "tuple()" } }, - "id": 2157, + "id": 2154, "nodeType": "ExpressionStatement", "src": "6903:60:10" } @@ -3388,7 +3388,7 @@ { "expression": { "hexValue": "74727565", - "id": 2159, + "id": 2156, "isConstant": false, "isLValue": false, "isPure": true, @@ -3402,21 +3402,21 @@ }, "value": "true" }, - "functionReturnParameters": 2130, - "id": 2160, + "functionReturnParameters": 2127, + "id": 2157, "nodeType": "Return", "src": "6984:11:10" } ] }, "documentation": { - "id": 2122, + "id": 2119, "nodeType": "StructuredDocumentation", "src": "6094:476:10", "text": " @dev Atomically decreases the allowance granted to `spender` by the caller.\n This is an alternative to {approve} that can be used as a mitigation for\n problems described in {IERC20-approve}.\n Emits an {Approval} event indicating the updated allowance.\n Requirements:\n - `spender` cannot be the zero address.\n - `spender` must have allowance for the caller of at least\n `subtractedValue`." }, "functionSelector": "a457c2d7", - "id": 2162, + "id": 2159, "implemented": true, "kind": "function", "modifiers": [], @@ -3424,17 +3424,17 @@ "nameLocation": "6584:17:10", "nodeType": "FunctionDefinition", "parameters": { - "id": 2127, + "id": 2124, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2124, + "id": 2121, "mutability": "mutable", "name": "spender", "nameLocation": "6610:7:10", "nodeType": "VariableDeclaration", - "scope": 2162, + "scope": 2159, "src": "6602:15:10", "stateVariable": false, "storageLocation": "default", @@ -3443,7 +3443,7 @@ "typeString": "address" }, "typeName": { - "id": 2123, + "id": 2120, "name": "address", "nodeType": "ElementaryTypeName", "src": "6602:7:10", @@ -3457,12 +3457,12 @@ }, { "constant": false, - "id": 2126, + "id": 2123, "mutability": "mutable", "name": "subtractedValue", "nameLocation": "6627:15:10", "nodeType": "VariableDeclaration", - "scope": 2162, + "scope": 2159, "src": "6619:23:10", "stateVariable": false, "storageLocation": "default", @@ -3471,7 +3471,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2125, + "id": 2122, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "6619:7:10", @@ -3486,17 +3486,17 @@ "src": "6601:42:10" }, "returnParameters": { - "id": 2130, + "id": 2127, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2129, + "id": 2126, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 2162, + "scope": 2159, "src": "6668:4:10", "stateVariable": false, "storageLocation": "default", @@ -3505,7 +3505,7 @@ "typeString": "bool" }, "typeName": { - "id": 2128, + "id": 2125, "name": "bool", "nodeType": "ElementaryTypeName", "src": "6668:4:10", @@ -3519,7 +3519,7 @@ ], "src": "6667:6:10" }, - "scope": 2479, + "scope": 2476, "src": "6575:427:10", "stateMutability": "nonpayable", "virtual": true, @@ -3527,7 +3527,7 @@ }, { "body": { - "id": 2238, + "id": 2235, "nodeType": "Block", "src": "7534:710:10", "statements": [ @@ -3539,17 +3539,17 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 2178, + "id": 2175, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 2173, + "id": 2170, "name": "from", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2165, + "referencedDeclaration": 2162, "src": "7552:4:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3562,7 +3562,7 @@ "arguments": [ { "hexValue": "30", - "id": 2176, + "id": 2173, "isConstant": false, "isLValue": false, "isPure": true, @@ -3584,7 +3584,7 @@ "typeString": "int_const 0" } ], - "id": 2175, + "id": 2172, "isConstant": false, "isLValue": false, "isPure": true, @@ -3596,14 +3596,14 @@ "typeString": "type(address)" }, "typeName": { - "id": 2174, + "id": 2171, "name": "address", "nodeType": "ElementaryTypeName", "src": "7560:7:10", "typeDescriptions": {} } }, - "id": 2177, + "id": 2174, "isConstant": false, "isLValue": false, "isPure": true, @@ -3627,7 +3627,7 @@ }, { "hexValue": "45524332303a207472616e736665722066726f6d20746865207a65726f2061646472657373", - "id": 2179, + "id": 2176, "isConstant": false, "isLValue": false, "isPure": true, @@ -3653,7 +3653,7 @@ "typeString": "literal_string \"ERC20: transfer from the zero address\"" } ], - "id": 2172, + "id": 2169, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -3667,7 +3667,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 2180, + "id": 2177, "isConstant": false, "isLValue": false, "isPure": false, @@ -3683,7 +3683,7 @@ "typeString": "tuple()" } }, - "id": 2181, + "id": 2178, "nodeType": "ExpressionStatement", "src": "7544:68:10" }, @@ -3695,17 +3695,17 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 2188, + "id": 2185, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 2183, + "id": 2180, "name": "to", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2167, + "referencedDeclaration": 2164, "src": "7630:2:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3718,7 +3718,7 @@ "arguments": [ { "hexValue": "30", - "id": 2186, + "id": 2183, "isConstant": false, "isLValue": false, "isPure": true, @@ -3740,7 +3740,7 @@ "typeString": "int_const 0" } ], - "id": 2185, + "id": 2182, "isConstant": false, "isLValue": false, "isPure": true, @@ -3752,14 +3752,14 @@ "typeString": "type(address)" }, "typeName": { - "id": 2184, + "id": 2181, "name": "address", "nodeType": "ElementaryTypeName", "src": "7636:7:10", "typeDescriptions": {} } }, - "id": 2187, + "id": 2184, "isConstant": false, "isLValue": false, "isPure": true, @@ -3783,7 +3783,7 @@ }, { "hexValue": "45524332303a207472616e7366657220746f20746865207a65726f2061646472657373", - "id": 2189, + "id": 2186, "isConstant": false, "isLValue": false, "isPure": true, @@ -3809,7 +3809,7 @@ "typeString": "literal_string \"ERC20: transfer to the zero address\"" } ], - "id": 2182, + "id": 2179, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -3823,7 +3823,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 2190, + "id": 2187, "isConstant": false, "isLValue": false, "isPure": false, @@ -3839,7 +3839,7 @@ "typeString": "tuple()" } }, - "id": 2191, + "id": 2188, "nodeType": "ExpressionStatement", "src": "7622:64:10" }, @@ -3847,11 +3847,11 @@ "expression": { "arguments": [ { - "id": 2193, + "id": 2190, "name": "from", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2165, + "referencedDeclaration": 2162, "src": "7718:4:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3859,11 +3859,11 @@ } }, { - "id": 2194, + "id": 2191, "name": "to", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2167, + "referencedDeclaration": 2164, "src": "7724:2:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3871,11 +3871,11 @@ } }, { - "id": 2195, + "id": 2192, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2169, + "referencedDeclaration": 2166, "src": "7728:6:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -3898,18 +3898,18 @@ "typeString": "uint256" } ], - "id": 2192, + "id": 2189, "name": "_beforeTokenTransfer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2467, + "referencedDeclaration": 2464, "src": "7697:20:10", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 2196, + "id": 2193, "isConstant": false, "isLValue": false, "isPure": false, @@ -3925,23 +3925,23 @@ "typeString": "tuple()" } }, - "id": 2197, + "id": 2194, "nodeType": "ExpressionStatement", "src": "7697:38:10" }, { "assignments": [ - 2199 + 2196 ], "declarations": [ { "constant": false, - "id": 2199, + "id": 2196, "mutability": "mutable", "name": "fromBalance", "nameLocation": "7754:11:10", "nodeType": "VariableDeclaration", - "scope": 2238, + "scope": 2235, "src": "7746:19:10", "stateVariable": false, "storageLocation": "default", @@ -3950,7 +3950,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2198, + "id": 2195, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "7746:7:10", @@ -3962,27 +3962,27 @@ "visibility": "internal" } ], - "id": 2203, + "id": 2200, "initialValue": { "baseExpression": { - "id": 2200, + "id": 2197, "name": "_balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1908, + "referencedDeclaration": 1905, "src": "7768:9:10", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 2202, + "id": 2199, "indexExpression": { - "id": 2201, + "id": 2198, "name": "from", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2165, + "referencedDeclaration": 2162, "src": "7778:4:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -4011,17 +4011,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2207, + "id": 2204, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 2205, + "id": 2202, "name": "fromBalance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2199, + "referencedDeclaration": 2196, "src": "7801:11:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -4031,11 +4031,11 @@ "nodeType": "BinaryOperation", "operator": ">=", "rightExpression": { - "id": 2206, + "id": 2203, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2169, + "referencedDeclaration": 2166, "src": "7816:6:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -4050,7 +4050,7 @@ }, { "hexValue": "45524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e6365", - "id": 2208, + "id": 2205, "isConstant": false, "isLValue": false, "isPure": true, @@ -4076,7 +4076,7 @@ "typeString": "literal_string \"ERC20: transfer amount exceeds balance\"" } ], - "id": 2204, + "id": 2201, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -4090,7 +4090,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 2209, + "id": 2206, "isConstant": false, "isLValue": false, "isPure": false, @@ -4106,42 +4106,42 @@ "typeString": "tuple()" } }, - "id": 2210, + "id": 2207, "nodeType": "ExpressionStatement", "src": "7793:72:10" }, { - "id": 2225, + "id": 2222, "nodeType": "UncheckedBlock", "src": "7875:273:10", "statements": [ { "expression": { - "id": 2217, + "id": 2214, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 2211, + "id": 2208, "name": "_balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1908, + "referencedDeclaration": 1905, "src": "7899:9:10", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 2213, + "id": 2210, "indexExpression": { - "id": 2212, + "id": 2209, "name": "from", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2165, + "referencedDeclaration": 2162, "src": "7909:4:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -4166,17 +4166,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2216, + "id": 2213, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 2214, + "id": 2211, "name": "fromBalance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2199, + "referencedDeclaration": 2196, "src": "7917:11:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -4186,11 +4186,11 @@ "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { - "id": 2215, + "id": 2212, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2169, + "referencedDeclaration": 2166, "src": "7931:6:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -4209,37 +4209,37 @@ "typeString": "uint256" } }, - "id": 2218, + "id": 2215, "nodeType": "ExpressionStatement", "src": "7899:38:10" }, { "expression": { - "id": 2223, + "id": 2220, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 2219, + "id": 2216, "name": "_balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1908, + "referencedDeclaration": 1905, "src": "8114:9:10", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 2221, + "id": 2218, "indexExpression": { - "id": 2220, + "id": 2217, "name": "to", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2167, + "referencedDeclaration": 2164, "src": "8124:2:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -4260,11 +4260,11 @@ "nodeType": "Assignment", "operator": "+=", "rightHandSide": { - "id": 2222, + "id": 2219, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2169, + "referencedDeclaration": 2166, "src": "8131:6:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -4277,7 +4277,7 @@ "typeString": "uint256" } }, - "id": 2224, + "id": 2221, "nodeType": "ExpressionStatement", "src": "8114:23:10" } @@ -4287,11 +4287,11 @@ "eventCall": { "arguments": [ { - "id": 2227, + "id": 2224, "name": "from", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2165, + "referencedDeclaration": 2162, "src": "8172:4:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -4299,11 +4299,11 @@ } }, { - "id": 2228, + "id": 2225, "name": "to", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2167, + "referencedDeclaration": 2164, "src": "8178:2:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -4311,11 +4311,11 @@ } }, { - "id": 2229, + "id": 2226, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2169, + "referencedDeclaration": 2166, "src": "8182:6:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -4338,18 +4338,18 @@ "typeString": "uint256" } ], - "id": 2226, + "id": 2223, "name": "Transfer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2491, + "referencedDeclaration": 2488, "src": "8163:8:10", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 2230, + "id": 2227, "isConstant": false, "isLValue": false, "isPure": false, @@ -4365,7 +4365,7 @@ "typeString": "tuple()" } }, - "id": 2231, + "id": 2228, "nodeType": "EmitStatement", "src": "8158:31:10" }, @@ -4373,11 +4373,11 @@ "expression": { "arguments": [ { - "id": 2233, + "id": 2230, "name": "from", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2165, + "referencedDeclaration": 2162, "src": "8220:4:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -4385,11 +4385,11 @@ } }, { - "id": 2234, + "id": 2231, "name": "to", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2167, + "referencedDeclaration": 2164, "src": "8226:2:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -4397,11 +4397,11 @@ } }, { - "id": 2235, + "id": 2232, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2169, + "referencedDeclaration": 2166, "src": "8230:6:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -4424,18 +4424,18 @@ "typeString": "uint256" } ], - "id": 2232, + "id": 2229, "name": "_afterTokenTransfer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2478, + "referencedDeclaration": 2475, "src": "8200:19:10", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 2236, + "id": 2233, "isConstant": false, "isLValue": false, "isPure": false, @@ -4451,19 +4451,19 @@ "typeString": "tuple()" } }, - "id": 2237, + "id": 2234, "nodeType": "ExpressionStatement", "src": "8200:37:10" } ] }, "documentation": { - "id": 2163, + "id": 2160, "nodeType": "StructuredDocumentation", "src": "7008:443:10", "text": " @dev Moves `amount` of tokens from `from` to `to`.\n This internal function is equivalent to {transfer}, and can be used to\n e.g. implement automatic token fees, slashing mechanisms, etc.\n Emits a {Transfer} event.\n Requirements:\n - `from` cannot be the zero address.\n - `to` cannot be the zero address.\n - `from` must have a balance of at least `amount`." }, - "id": 2239, + "id": 2236, "implemented": true, "kind": "function", "modifiers": [], @@ -4471,17 +4471,17 @@ "nameLocation": "7465:9:10", "nodeType": "FunctionDefinition", "parameters": { - "id": 2170, + "id": 2167, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2165, + "id": 2162, "mutability": "mutable", "name": "from", "nameLocation": "7483:4:10", "nodeType": "VariableDeclaration", - "scope": 2239, + "scope": 2236, "src": "7475:12:10", "stateVariable": false, "storageLocation": "default", @@ -4490,7 +4490,7 @@ "typeString": "address" }, "typeName": { - "id": 2164, + "id": 2161, "name": "address", "nodeType": "ElementaryTypeName", "src": "7475:7:10", @@ -4504,12 +4504,12 @@ }, { "constant": false, - "id": 2167, + "id": 2164, "mutability": "mutable", "name": "to", "nameLocation": "7497:2:10", "nodeType": "VariableDeclaration", - "scope": 2239, + "scope": 2236, "src": "7489:10:10", "stateVariable": false, "storageLocation": "default", @@ -4518,7 +4518,7 @@ "typeString": "address" }, "typeName": { - "id": 2166, + "id": 2163, "name": "address", "nodeType": "ElementaryTypeName", "src": "7489:7:10", @@ -4532,12 +4532,12 @@ }, { "constant": false, - "id": 2169, + "id": 2166, "mutability": "mutable", "name": "amount", "nameLocation": "7509:6:10", "nodeType": "VariableDeclaration", - "scope": 2239, + "scope": 2236, "src": "7501:14:10", "stateVariable": false, "storageLocation": "default", @@ -4546,7 +4546,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2168, + "id": 2165, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "7501:7:10", @@ -4561,12 +4561,12 @@ "src": "7474:42:10" }, "returnParameters": { - "id": 2171, + "id": 2168, "nodeType": "ParameterList", "parameters": [], "src": "7534:0:10" }, - "scope": 2479, + "scope": 2476, "src": "7456:788:10", "stateMutability": "nonpayable", "virtual": true, @@ -4574,7 +4574,7 @@ }, { "body": { - "id": 2295, + "id": 2292, "nodeType": "Block", "src": "8585:470:10", "statements": [ @@ -4586,17 +4586,17 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 2253, + "id": 2250, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 2248, + "id": 2245, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2242, + "referencedDeclaration": 2239, "src": "8603:7:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -4609,7 +4609,7 @@ "arguments": [ { "hexValue": "30", - "id": 2251, + "id": 2248, "isConstant": false, "isLValue": false, "isPure": true, @@ -4631,7 +4631,7 @@ "typeString": "int_const 0" } ], - "id": 2250, + "id": 2247, "isConstant": false, "isLValue": false, "isPure": true, @@ -4643,14 +4643,14 @@ "typeString": "type(address)" }, "typeName": { - "id": 2249, + "id": 2246, "name": "address", "nodeType": "ElementaryTypeName", "src": "8614:7:10", "typeDescriptions": {} } }, - "id": 2252, + "id": 2249, "isConstant": false, "isLValue": false, "isPure": true, @@ -4674,7 +4674,7 @@ }, { "hexValue": "45524332303a206d696e7420746f20746865207a65726f2061646472657373", - "id": 2254, + "id": 2251, "isConstant": false, "isLValue": false, "isPure": true, @@ -4700,7 +4700,7 @@ "typeString": "literal_string \"ERC20: mint to the zero address\"" } ], - "id": 2247, + "id": 2244, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -4714,7 +4714,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 2255, + "id": 2252, "isConstant": false, "isLValue": false, "isPure": false, @@ -4730,7 +4730,7 @@ "typeString": "tuple()" } }, - "id": 2256, + "id": 2253, "nodeType": "ExpressionStatement", "src": "8595:65:10" }, @@ -4741,7 +4741,7 @@ "arguments": [ { "hexValue": "30", - "id": 2260, + "id": 2257, "isConstant": false, "isLValue": false, "isPure": true, @@ -4763,7 +4763,7 @@ "typeString": "int_const 0" } ], - "id": 2259, + "id": 2256, "isConstant": false, "isLValue": false, "isPure": true, @@ -4775,14 +4775,14 @@ "typeString": "type(address)" }, "typeName": { - "id": 2258, + "id": 2255, "name": "address", "nodeType": "ElementaryTypeName", "src": "8692:7:10", "typeDescriptions": {} } }, - "id": 2261, + "id": 2258, "isConstant": false, "isLValue": false, "isPure": true, @@ -4799,11 +4799,11 @@ } }, { - "id": 2262, + "id": 2259, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2242, + "referencedDeclaration": 2239, "src": "8704:7:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -4811,11 +4811,11 @@ } }, { - "id": 2263, + "id": 2260, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2244, + "referencedDeclaration": 2241, "src": "8713:6:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -4838,18 +4838,18 @@ "typeString": "uint256" } ], - "id": 2257, + "id": 2254, "name": "_beforeTokenTransfer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2467, + "referencedDeclaration": 2464, "src": "8671:20:10", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 2264, + "id": 2261, "isConstant": false, "isLValue": false, "isPure": false, @@ -4865,23 +4865,23 @@ "typeString": "tuple()" } }, - "id": 2265, + "id": 2262, "nodeType": "ExpressionStatement", "src": "8671:49:10" }, { "expression": { - "id": 2268, + "id": 2265, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 2266, + "id": 2263, "name": "_totalSupply", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1916, + "referencedDeclaration": 1913, "src": "8731:12:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -4891,11 +4891,11 @@ "nodeType": "Assignment", "operator": "+=", "rightHandSide": { - "id": 2267, + "id": 2264, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2244, + "referencedDeclaration": 2241, "src": "8747:6:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -4908,42 +4908,42 @@ "typeString": "uint256" } }, - "id": 2269, + "id": 2266, "nodeType": "ExpressionStatement", "src": "8731:22:10" }, { - "id": 2276, + "id": 2273, "nodeType": "UncheckedBlock", "src": "8763:175:10", "statements": [ { "expression": { - "id": 2274, + "id": 2271, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 2270, + "id": 2267, "name": "_balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1908, + "referencedDeclaration": 1905, "src": "8899:9:10", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 2272, + "id": 2269, "indexExpression": { - "id": 2271, + "id": 2268, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2242, + "referencedDeclaration": 2239, "src": "8909:7:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -4964,11 +4964,11 @@ "nodeType": "Assignment", "operator": "+=", "rightHandSide": { - "id": 2273, + "id": 2270, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2244, + "referencedDeclaration": 2241, "src": "8921:6:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -4981,7 +4981,7 @@ "typeString": "uint256" } }, - "id": 2275, + "id": 2272, "nodeType": "ExpressionStatement", "src": "8899:28:10" } @@ -4994,7 +4994,7 @@ "arguments": [ { "hexValue": "30", - "id": 2280, + "id": 2277, "isConstant": false, "isLValue": false, "isPure": true, @@ -5016,7 +5016,7 @@ "typeString": "int_const 0" } ], - "id": 2279, + "id": 2276, "isConstant": false, "isLValue": false, "isPure": true, @@ -5028,14 +5028,14 @@ "typeString": "type(address)" }, "typeName": { - "id": 2278, + "id": 2275, "name": "address", "nodeType": "ElementaryTypeName", "src": "8961:7:10", "typeDescriptions": {} } }, - "id": 2281, + "id": 2278, "isConstant": false, "isLValue": false, "isPure": true, @@ -5052,11 +5052,11 @@ } }, { - "id": 2282, + "id": 2279, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2242, + "referencedDeclaration": 2239, "src": "8973:7:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -5064,11 +5064,11 @@ } }, { - "id": 2283, + "id": 2280, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2244, + "referencedDeclaration": 2241, "src": "8982:6:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5091,18 +5091,18 @@ "typeString": "uint256" } ], - "id": 2277, + "id": 2274, "name": "Transfer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2491, + "referencedDeclaration": 2488, "src": "8952:8:10", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 2284, + "id": 2281, "isConstant": false, "isLValue": false, "isPure": false, @@ -5118,7 +5118,7 @@ "typeString": "tuple()" } }, - "id": 2285, + "id": 2282, "nodeType": "EmitStatement", "src": "8947:42:10" }, @@ -5129,7 +5129,7 @@ "arguments": [ { "hexValue": "30", - "id": 2289, + "id": 2286, "isConstant": false, "isLValue": false, "isPure": true, @@ -5151,7 +5151,7 @@ "typeString": "int_const 0" } ], - "id": 2288, + "id": 2285, "isConstant": false, "isLValue": false, "isPure": true, @@ -5163,14 +5163,14 @@ "typeString": "type(address)" }, "typeName": { - "id": 2287, + "id": 2284, "name": "address", "nodeType": "ElementaryTypeName", "src": "9020:7:10", "typeDescriptions": {} } }, - "id": 2290, + "id": 2287, "isConstant": false, "isLValue": false, "isPure": true, @@ -5187,11 +5187,11 @@ } }, { - "id": 2291, + "id": 2288, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2242, + "referencedDeclaration": 2239, "src": "9032:7:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -5199,11 +5199,11 @@ } }, { - "id": 2292, + "id": 2289, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2244, + "referencedDeclaration": 2241, "src": "9041:6:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5226,18 +5226,18 @@ "typeString": "uint256" } ], - "id": 2286, + "id": 2283, "name": "_afterTokenTransfer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2478, + "referencedDeclaration": 2475, "src": "9000:19:10", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 2293, + "id": 2290, "isConstant": false, "isLValue": false, "isPure": false, @@ -5253,19 +5253,19 @@ "typeString": "tuple()" } }, - "id": 2294, + "id": 2291, "nodeType": "ExpressionStatement", "src": "9000:48:10" } ] }, "documentation": { - "id": 2240, + "id": 2237, "nodeType": "StructuredDocumentation", "src": "8250:265:10", "text": "@dev Creates `amount` tokens and assigns them to `account`, increasing\n the total supply.\n Emits a {Transfer} event with `from` set to the zero address.\n Requirements:\n - `account` cannot be the zero address." }, - "id": 2296, + "id": 2293, "implemented": true, "kind": "function", "modifiers": [], @@ -5273,17 +5273,17 @@ "nameLocation": "8529:5:10", "nodeType": "FunctionDefinition", "parameters": { - "id": 2245, + "id": 2242, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2242, + "id": 2239, "mutability": "mutable", "name": "account", "nameLocation": "8543:7:10", "nodeType": "VariableDeclaration", - "scope": 2296, + "scope": 2293, "src": "8535:15:10", "stateVariable": false, "storageLocation": "default", @@ -5292,7 +5292,7 @@ "typeString": "address" }, "typeName": { - "id": 2241, + "id": 2238, "name": "address", "nodeType": "ElementaryTypeName", "src": "8535:7:10", @@ -5306,12 +5306,12 @@ }, { "constant": false, - "id": 2244, + "id": 2241, "mutability": "mutable", "name": "amount", "nameLocation": "8560:6:10", "nodeType": "VariableDeclaration", - "scope": 2296, + "scope": 2293, "src": "8552:14:10", "stateVariable": false, "storageLocation": "default", @@ -5320,7 +5320,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2243, + "id": 2240, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "8552:7:10", @@ -5335,12 +5335,12 @@ "src": "8534:33:10" }, "returnParameters": { - "id": 2246, + "id": 2243, "nodeType": "ParameterList", "parameters": [], "src": "8585:0:10" }, - "scope": 2479, + "scope": 2476, "src": "8520:535:10", "stateMutability": "nonpayable", "virtual": true, @@ -5348,7 +5348,7 @@ }, { "body": { - "id": 2367, + "id": 2364, "nodeType": "Block", "src": "9440:594:10", "statements": [ @@ -5360,17 +5360,17 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 2310, + "id": 2307, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 2305, + "id": 2302, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2299, + "referencedDeclaration": 2296, "src": "9458:7:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -5383,7 +5383,7 @@ "arguments": [ { "hexValue": "30", - "id": 2308, + "id": 2305, "isConstant": false, "isLValue": false, "isPure": true, @@ -5405,7 +5405,7 @@ "typeString": "int_const 0" } ], - "id": 2307, + "id": 2304, "isConstant": false, "isLValue": false, "isPure": true, @@ -5417,14 +5417,14 @@ "typeString": "type(address)" }, "typeName": { - "id": 2306, + "id": 2303, "name": "address", "nodeType": "ElementaryTypeName", "src": "9469:7:10", "typeDescriptions": {} } }, - "id": 2309, + "id": 2306, "isConstant": false, "isLValue": false, "isPure": true, @@ -5448,7 +5448,7 @@ }, { "hexValue": "45524332303a206275726e2066726f6d20746865207a65726f2061646472657373", - "id": 2311, + "id": 2308, "isConstant": false, "isLValue": false, "isPure": true, @@ -5474,7 +5474,7 @@ "typeString": "literal_string \"ERC20: burn from the zero address\"" } ], - "id": 2304, + "id": 2301, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -5488,7 +5488,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 2312, + "id": 2309, "isConstant": false, "isLValue": false, "isPure": false, @@ -5504,7 +5504,7 @@ "typeString": "tuple()" } }, - "id": 2313, + "id": 2310, "nodeType": "ExpressionStatement", "src": "9450:67:10" }, @@ -5512,11 +5512,11 @@ "expression": { "arguments": [ { - "id": 2315, + "id": 2312, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2299, + "referencedDeclaration": 2296, "src": "9549:7:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -5527,7 +5527,7 @@ "arguments": [ { "hexValue": "30", - "id": 2318, + "id": 2315, "isConstant": false, "isLValue": false, "isPure": true, @@ -5549,7 +5549,7 @@ "typeString": "int_const 0" } ], - "id": 2317, + "id": 2314, "isConstant": false, "isLValue": false, "isPure": true, @@ -5561,14 +5561,14 @@ "typeString": "type(address)" }, "typeName": { - "id": 2316, + "id": 2313, "name": "address", "nodeType": "ElementaryTypeName", "src": "9558:7:10", "typeDescriptions": {} } }, - "id": 2319, + "id": 2316, "isConstant": false, "isLValue": false, "isPure": true, @@ -5585,11 +5585,11 @@ } }, { - "id": 2320, + "id": 2317, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2301, + "referencedDeclaration": 2298, "src": "9570:6:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5612,18 +5612,18 @@ "typeString": "uint256" } ], - "id": 2314, + "id": 2311, "name": "_beforeTokenTransfer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2467, + "referencedDeclaration": 2464, "src": "9528:20:10", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 2321, + "id": 2318, "isConstant": false, "isLValue": false, "isPure": false, @@ -5639,23 +5639,23 @@ "typeString": "tuple()" } }, - "id": 2322, + "id": 2319, "nodeType": "ExpressionStatement", "src": "9528:49:10" }, { "assignments": [ - 2324 + 2321 ], "declarations": [ { "constant": false, - "id": 2324, + "id": 2321, "mutability": "mutable", "name": "accountBalance", "nameLocation": "9596:14:10", "nodeType": "VariableDeclaration", - "scope": 2367, + "scope": 2364, "src": "9588:22:10", "stateVariable": false, "storageLocation": "default", @@ -5664,7 +5664,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2323, + "id": 2320, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "9588:7:10", @@ -5676,27 +5676,27 @@ "visibility": "internal" } ], - "id": 2328, + "id": 2325, "initialValue": { "baseExpression": { - "id": 2325, + "id": 2322, "name": "_balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1908, + "referencedDeclaration": 1905, "src": "9613:9:10", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 2327, + "id": 2324, "indexExpression": { - "id": 2326, + "id": 2323, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2299, + "referencedDeclaration": 2296, "src": "9623:7:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -5725,17 +5725,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2332, + "id": 2329, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 2330, + "id": 2327, "name": "accountBalance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2324, + "referencedDeclaration": 2321, "src": "9649:14:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5745,11 +5745,11 @@ "nodeType": "BinaryOperation", "operator": ">=", "rightExpression": { - "id": 2331, + "id": 2328, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2301, + "referencedDeclaration": 2298, "src": "9667:6:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5764,7 +5764,7 @@ }, { "hexValue": "45524332303a206275726e20616d6f756e7420657863656564732062616c616e6365", - "id": 2333, + "id": 2330, "isConstant": false, "isLValue": false, "isPure": true, @@ -5790,7 +5790,7 @@ "typeString": "literal_string \"ERC20: burn amount exceeds balance\"" } ], - "id": 2329, + "id": 2326, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -5804,7 +5804,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 2334, + "id": 2331, "isConstant": false, "isLValue": false, "isPure": false, @@ -5820,42 +5820,42 @@ "typeString": "tuple()" } }, - "id": 2335, + "id": 2332, "nodeType": "ExpressionStatement", "src": "9641:71:10" }, { - "id": 2348, + "id": 2345, "nodeType": "UncheckedBlock", "src": "9722:194:10", "statements": [ { "expression": { - "id": 2342, + "id": 2339, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 2336, + "id": 2333, "name": "_balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1908, + "referencedDeclaration": 1905, "src": "9746:9:10", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 2338, + "id": 2335, "indexExpression": { - "id": 2337, + "id": 2334, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2299, + "referencedDeclaration": 2296, "src": "9756:7:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -5880,17 +5880,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2341, + "id": 2338, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 2339, + "id": 2336, "name": "accountBalance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2324, + "referencedDeclaration": 2321, "src": "9767:14:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5900,11 +5900,11 @@ "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { - "id": 2340, + "id": 2337, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2301, + "referencedDeclaration": 2298, "src": "9784:6:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5923,23 +5923,23 @@ "typeString": "uint256" } }, - "id": 2343, + "id": 2340, "nodeType": "ExpressionStatement", "src": "9746:44:10" }, { "expression": { - "id": 2346, + "id": 2343, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 2344, + "id": 2341, "name": "_totalSupply", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1916, + "referencedDeclaration": 1913, "src": "9883:12:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5949,11 +5949,11 @@ "nodeType": "Assignment", "operator": "-=", "rightHandSide": { - "id": 2345, + "id": 2342, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2301, + "referencedDeclaration": 2298, "src": "9899:6:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5966,7 +5966,7 @@ "typeString": "uint256" } }, - "id": 2347, + "id": 2344, "nodeType": "ExpressionStatement", "src": "9883:22:10" } @@ -5976,11 +5976,11 @@ "eventCall": { "arguments": [ { - "id": 2350, + "id": 2347, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2299, + "referencedDeclaration": 2296, "src": "9940:7:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -5991,7 +5991,7 @@ "arguments": [ { "hexValue": "30", - "id": 2353, + "id": 2350, "isConstant": false, "isLValue": false, "isPure": true, @@ -6013,7 +6013,7 @@ "typeString": "int_const 0" } ], - "id": 2352, + "id": 2349, "isConstant": false, "isLValue": false, "isPure": true, @@ -6025,14 +6025,14 @@ "typeString": "type(address)" }, "typeName": { - "id": 2351, + "id": 2348, "name": "address", "nodeType": "ElementaryTypeName", "src": "9949:7:10", "typeDescriptions": {} } }, - "id": 2354, + "id": 2351, "isConstant": false, "isLValue": false, "isPure": true, @@ -6049,11 +6049,11 @@ } }, { - "id": 2355, + "id": 2352, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2301, + "referencedDeclaration": 2298, "src": "9961:6:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6076,18 +6076,18 @@ "typeString": "uint256" } ], - "id": 2349, + "id": 2346, "name": "Transfer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2491, + "referencedDeclaration": 2488, "src": "9931:8:10", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 2356, + "id": 2353, "isConstant": false, "isLValue": false, "isPure": false, @@ -6103,7 +6103,7 @@ "typeString": "tuple()" } }, - "id": 2357, + "id": 2354, "nodeType": "EmitStatement", "src": "9926:42:10" }, @@ -6111,11 +6111,11 @@ "expression": { "arguments": [ { - "id": 2359, + "id": 2356, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2299, + "referencedDeclaration": 2296, "src": "9999:7:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -6126,7 +6126,7 @@ "arguments": [ { "hexValue": "30", - "id": 2362, + "id": 2359, "isConstant": false, "isLValue": false, "isPure": true, @@ -6148,7 +6148,7 @@ "typeString": "int_const 0" } ], - "id": 2361, + "id": 2358, "isConstant": false, "isLValue": false, "isPure": true, @@ -6160,14 +6160,14 @@ "typeString": "type(address)" }, "typeName": { - "id": 2360, + "id": 2357, "name": "address", "nodeType": "ElementaryTypeName", "src": "10008:7:10", "typeDescriptions": {} } }, - "id": 2363, + "id": 2360, "isConstant": false, "isLValue": false, "isPure": true, @@ -6184,11 +6184,11 @@ } }, { - "id": 2364, + "id": 2361, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2301, + "referencedDeclaration": 2298, "src": "10020:6:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6211,18 +6211,18 @@ "typeString": "uint256" } ], - "id": 2358, + "id": 2355, "name": "_afterTokenTransfer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2478, + "referencedDeclaration": 2475, "src": "9979:19:10", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 2365, + "id": 2362, "isConstant": false, "isLValue": false, "isPure": false, @@ -6238,19 +6238,19 @@ "typeString": "tuple()" } }, - "id": 2366, + "id": 2363, "nodeType": "ExpressionStatement", "src": "9979:48:10" } ] }, "documentation": { - "id": 2297, + "id": 2294, "nodeType": "StructuredDocumentation", "src": "9061:309:10", "text": " @dev Destroys `amount` tokens from `account`, reducing the\n total supply.\n Emits a {Transfer} event with `to` set to the zero address.\n Requirements:\n - `account` cannot be the zero address.\n - `account` must have at least `amount` tokens." }, - "id": 2368, + "id": 2365, "implemented": true, "kind": "function", "modifiers": [], @@ -6258,17 +6258,17 @@ "nameLocation": "9384:5:10", "nodeType": "FunctionDefinition", "parameters": { - "id": 2302, + "id": 2299, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2299, + "id": 2296, "mutability": "mutable", "name": "account", "nameLocation": "9398:7:10", "nodeType": "VariableDeclaration", - "scope": 2368, + "scope": 2365, "src": "9390:15:10", "stateVariable": false, "storageLocation": "default", @@ -6277,7 +6277,7 @@ "typeString": "address" }, "typeName": { - "id": 2298, + "id": 2295, "name": "address", "nodeType": "ElementaryTypeName", "src": "9390:7:10", @@ -6291,12 +6291,12 @@ }, { "constant": false, - "id": 2301, + "id": 2298, "mutability": "mutable", "name": "amount", "nameLocation": "9415:6:10", "nodeType": "VariableDeclaration", - "scope": 2368, + "scope": 2365, "src": "9407:14:10", "stateVariable": false, "storageLocation": "default", @@ -6305,7 +6305,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2300, + "id": 2297, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "9407:7:10", @@ -6320,12 +6320,12 @@ "src": "9389:33:10" }, "returnParameters": { - "id": 2303, + "id": 2300, "nodeType": "ParameterList", "parameters": [], "src": "9440:0:10" }, - "scope": 2479, + "scope": 2476, "src": "9375:659:10", "stateMutability": "nonpayable", "virtual": true, @@ -6333,7 +6333,7 @@ }, { "body": { - "id": 2412, + "id": 2409, "nodeType": "Block", "src": "10540:257:10", "statements": [ @@ -6345,17 +6345,17 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 2384, + "id": 2381, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 2379, + "id": 2376, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2371, + "referencedDeclaration": 2368, "src": "10558:5:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -6368,7 +6368,7 @@ "arguments": [ { "hexValue": "30", - "id": 2382, + "id": 2379, "isConstant": false, "isLValue": false, "isPure": true, @@ -6390,7 +6390,7 @@ "typeString": "int_const 0" } ], - "id": 2381, + "id": 2378, "isConstant": false, "isLValue": false, "isPure": true, @@ -6402,14 +6402,14 @@ "typeString": "type(address)" }, "typeName": { - "id": 2380, + "id": 2377, "name": "address", "nodeType": "ElementaryTypeName", "src": "10567:7:10", "typeDescriptions": {} } }, - "id": 2383, + "id": 2380, "isConstant": false, "isLValue": false, "isPure": true, @@ -6433,7 +6433,7 @@ }, { "hexValue": "45524332303a20617070726f76652066726f6d20746865207a65726f2061646472657373", - "id": 2385, + "id": 2382, "isConstant": false, "isLValue": false, "isPure": true, @@ -6459,7 +6459,7 @@ "typeString": "literal_string \"ERC20: approve from the zero address\"" } ], - "id": 2378, + "id": 2375, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -6473,7 +6473,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 2386, + "id": 2383, "isConstant": false, "isLValue": false, "isPure": false, @@ -6489,7 +6489,7 @@ "typeString": "tuple()" } }, - "id": 2387, + "id": 2384, "nodeType": "ExpressionStatement", "src": "10550:68:10" }, @@ -6501,17 +6501,17 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 2394, + "id": 2391, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 2389, + "id": 2386, "name": "spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2373, + "referencedDeclaration": 2370, "src": "10636:7:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -6524,7 +6524,7 @@ "arguments": [ { "hexValue": "30", - "id": 2392, + "id": 2389, "isConstant": false, "isLValue": false, "isPure": true, @@ -6546,7 +6546,7 @@ "typeString": "int_const 0" } ], - "id": 2391, + "id": 2388, "isConstant": false, "isLValue": false, "isPure": true, @@ -6558,14 +6558,14 @@ "typeString": "type(address)" }, "typeName": { - "id": 2390, + "id": 2387, "name": "address", "nodeType": "ElementaryTypeName", "src": "10647:7:10", "typeDescriptions": {} } }, - "id": 2393, + "id": 2390, "isConstant": false, "isLValue": false, "isPure": true, @@ -6589,7 +6589,7 @@ }, { "hexValue": "45524332303a20617070726f766520746f20746865207a65726f2061646472657373", - "id": 2395, + "id": 2392, "isConstant": false, "isLValue": false, "isPure": true, @@ -6615,7 +6615,7 @@ "typeString": "literal_string \"ERC20: approve to the zero address\"" } ], - "id": 2388, + "id": 2385, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -6629,7 +6629,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 2396, + "id": 2393, "isConstant": false, "isLValue": false, "isPure": false, @@ -6645,13 +6645,13 @@ "typeString": "tuple()" } }, - "id": 2397, + "id": 2394, "nodeType": "ExpressionStatement", "src": "10628:68:10" }, { "expression": { - "id": 2404, + "id": 2401, "isConstant": false, "isLValue": false, "isPure": false, @@ -6659,24 +6659,24 @@ "leftHandSide": { "baseExpression": { "baseExpression": { - "id": 2398, + "id": 2395, "name": "_allowances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1914, + "referencedDeclaration": 1911, "src": "10707:11:10", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", "typeString": "mapping(address => mapping(address => uint256))" } }, - "id": 2401, + "id": 2398, "indexExpression": { - "id": 2399, + "id": 2396, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2371, + "referencedDeclaration": 2368, "src": "10719:5:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -6694,13 +6694,13 @@ "typeString": "mapping(address => uint256)" } }, - "id": 2402, + "id": 2399, "indexExpression": { - "id": 2400, + "id": 2397, "name": "spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2373, + "referencedDeclaration": 2370, "src": "10726:7:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -6721,11 +6721,11 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 2403, + "id": 2400, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2375, + "referencedDeclaration": 2372, "src": "10737:6:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6738,7 +6738,7 @@ "typeString": "uint256" } }, - "id": 2405, + "id": 2402, "nodeType": "ExpressionStatement", "src": "10707:36:10" }, @@ -6746,11 +6746,11 @@ "eventCall": { "arguments": [ { - "id": 2407, + "id": 2404, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2371, + "referencedDeclaration": 2368, "src": "10767:5:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -6758,11 +6758,11 @@ } }, { - "id": 2408, + "id": 2405, "name": "spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2373, + "referencedDeclaration": 2370, "src": "10774:7:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -6770,11 +6770,11 @@ } }, { - "id": 2409, + "id": 2406, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2375, + "referencedDeclaration": 2372, "src": "10783:6:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6797,18 +6797,18 @@ "typeString": "uint256" } ], - "id": 2406, + "id": 2403, "name": "Approval", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2500, + "referencedDeclaration": 2497, "src": "10758:8:10", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 2410, + "id": 2407, "isConstant": false, "isLValue": false, "isPure": false, @@ -6824,19 +6824,19 @@ "typeString": "tuple()" } }, - "id": 2411, + "id": 2408, "nodeType": "EmitStatement", "src": "10753:37:10" } ] }, "documentation": { - "id": 2369, + "id": 2366, "nodeType": "StructuredDocumentation", "src": "10040:412:10", "text": " @dev Sets `amount` as the allowance of `spender` over the `owner` s tokens.\n This internal function is equivalent to `approve`, and can be used to\n e.g. set automatic allowances for certain subsystems, etc.\n Emits an {Approval} event.\n Requirements:\n - `owner` cannot be the zero address.\n - `spender` cannot be the zero address." }, - "id": 2413, + "id": 2410, "implemented": true, "kind": "function", "modifiers": [], @@ -6844,17 +6844,17 @@ "nameLocation": "10466:8:10", "nodeType": "FunctionDefinition", "parameters": { - "id": 2376, + "id": 2373, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2371, + "id": 2368, "mutability": "mutable", "name": "owner", "nameLocation": "10483:5:10", "nodeType": "VariableDeclaration", - "scope": 2413, + "scope": 2410, "src": "10475:13:10", "stateVariable": false, "storageLocation": "default", @@ -6863,7 +6863,7 @@ "typeString": "address" }, "typeName": { - "id": 2370, + "id": 2367, "name": "address", "nodeType": "ElementaryTypeName", "src": "10475:7:10", @@ -6877,12 +6877,12 @@ }, { "constant": false, - "id": 2373, + "id": 2370, "mutability": "mutable", "name": "spender", "nameLocation": "10498:7:10", "nodeType": "VariableDeclaration", - "scope": 2413, + "scope": 2410, "src": "10490:15:10", "stateVariable": false, "storageLocation": "default", @@ -6891,7 +6891,7 @@ "typeString": "address" }, "typeName": { - "id": 2372, + "id": 2369, "name": "address", "nodeType": "ElementaryTypeName", "src": "10490:7:10", @@ -6905,12 +6905,12 @@ }, { "constant": false, - "id": 2375, + "id": 2372, "mutability": "mutable", "name": "amount", "nameLocation": "10515:6:10", "nodeType": "VariableDeclaration", - "scope": 2413, + "scope": 2410, "src": "10507:14:10", "stateVariable": false, "storageLocation": "default", @@ -6919,7 +6919,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2374, + "id": 2371, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "10507:7:10", @@ -6934,12 +6934,12 @@ "src": "10474:48:10" }, "returnParameters": { - "id": 2377, + "id": 2374, "nodeType": "ParameterList", "parameters": [], "src": "10540:0:10" }, - "scope": 2479, + "scope": 2476, "src": "10457:340:10", "stateMutability": "nonpayable", "virtual": true, @@ -6947,23 +6947,23 @@ }, { "body": { - "id": 2455, + "id": 2452, "nodeType": "Block", "src": "11168:321:10", "statements": [ { "assignments": [ - 2424 + 2421 ], "declarations": [ { "constant": false, - "id": 2424, + "id": 2421, "mutability": "mutable", "name": "currentAllowance", "nameLocation": "11186:16:10", "nodeType": "VariableDeclaration", - "scope": 2455, + "scope": 2452, "src": "11178:24:10", "stateVariable": false, "storageLocation": "default", @@ -6972,7 +6972,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2423, + "id": 2420, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "11178:7:10", @@ -6984,15 +6984,15 @@ "visibility": "internal" } ], - "id": 2429, + "id": 2426, "initialValue": { "arguments": [ { - "id": 2426, + "id": 2423, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2416, + "referencedDeclaration": 2413, "src": "11215:5:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -7000,11 +7000,11 @@ } }, { - "id": 2427, + "id": 2424, "name": "spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2418, + "referencedDeclaration": 2415, "src": "11222:7:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -7023,18 +7023,18 @@ "typeString": "address" } ], - "id": 2425, + "id": 2422, "name": "allowance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2034, + "referencedDeclaration": 2031, "src": "11205:9:10", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$_t_address_$returns$_t_uint256_$", "typeString": "function (address,address) view returns (uint256)" } }, - "id": 2428, + "id": 2425, "isConstant": false, "isLValue": false, "isPure": false, @@ -7059,17 +7059,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2436, + "id": 2433, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 2430, + "id": 2427, "name": "currentAllowance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2424, + "referencedDeclaration": 2421, "src": "11244:16:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -7082,7 +7082,7 @@ "expression": { "arguments": [ { - "id": 2433, + "id": 2430, "isConstant": false, "isLValue": false, "isPure": true, @@ -7094,7 +7094,7 @@ "typeString": "type(uint256)" }, "typeName": { - "id": 2432, + "id": 2429, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "11269:7:10", @@ -7109,7 +7109,7 @@ "typeString": "type(uint256)" } ], - "id": 2431, + "id": 2428, "name": "type", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -7120,7 +7120,7 @@ "typeString": "function () pure" } }, - "id": 2434, + "id": 2431, "isConstant": false, "isLValue": false, "isPure": true, @@ -7136,7 +7136,7 @@ "typeString": "type(uint256)" } }, - "id": 2435, + "id": 2432, "isConstant": false, "isLValue": false, "isPure": true, @@ -7156,11 +7156,11 @@ "typeString": "bool" } }, - "id": 2454, + "id": 2451, "nodeType": "IfStatement", "src": "11240:243:10", "trueBody": { - "id": 2453, + "id": 2450, "nodeType": "Block", "src": "11283:200:10", "statements": [ @@ -7172,17 +7172,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2440, + "id": 2437, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 2438, + "id": 2435, "name": "currentAllowance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2424, + "referencedDeclaration": 2421, "src": "11305:16:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -7192,11 +7192,11 @@ "nodeType": "BinaryOperation", "operator": ">=", "rightExpression": { - "id": 2439, + "id": 2436, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2420, + "referencedDeclaration": 2417, "src": "11325:6:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -7211,7 +7211,7 @@ }, { "hexValue": "45524332303a20696e73756666696369656e7420616c6c6f77616e6365", - "id": 2441, + "id": 2438, "isConstant": false, "isLValue": false, "isPure": true, @@ -7237,7 +7237,7 @@ "typeString": "literal_string \"ERC20: insufficient allowance\"" } ], - "id": 2437, + "id": 2434, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -7251,7 +7251,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 2442, + "id": 2439, "isConstant": false, "isLValue": false, "isPure": false, @@ -7267,12 +7267,12 @@ "typeString": "tuple()" } }, - "id": 2443, + "id": 2440, "nodeType": "ExpressionStatement", "src": "11297:68:10" }, { - "id": 2452, + "id": 2449, "nodeType": "UncheckedBlock", "src": "11379:94:10", "statements": [ @@ -7280,11 +7280,11 @@ "expression": { "arguments": [ { - "id": 2445, + "id": 2442, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2416, + "referencedDeclaration": 2413, "src": "11416:5:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -7292,11 +7292,11 @@ } }, { - "id": 2446, + "id": 2443, "name": "spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2418, + "referencedDeclaration": 2415, "src": "11423:7:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -7308,17 +7308,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2449, + "id": 2446, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 2447, + "id": 2444, "name": "currentAllowance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2424, + "referencedDeclaration": 2421, "src": "11432:16:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -7328,11 +7328,11 @@ "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { - "id": 2448, + "id": 2445, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2420, + "referencedDeclaration": 2417, "src": "11451:6:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -7361,18 +7361,18 @@ "typeString": "uint256" } ], - "id": 2444, + "id": 2441, "name": "_approve", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2413, + "referencedDeclaration": 2410, "src": "11407:8:10", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 2450, + "id": 2447, "isConstant": false, "isLValue": false, "isPure": false, @@ -7388,7 +7388,7 @@ "typeString": "tuple()" } }, - "id": 2451, + "id": 2448, "nodeType": "ExpressionStatement", "src": "11407:51:10" } @@ -7400,12 +7400,12 @@ ] }, "documentation": { - "id": 2414, + "id": 2411, "nodeType": "StructuredDocumentation", "src": "10803:270:10", "text": " @dev Updates `owner` s allowance for `spender` based on spent `amount`.\n Does not update the allowance amount in case of infinite allowance.\n Revert if not enough allowance is available.\n Might emit an {Approval} event." }, - "id": 2456, + "id": 2453, "implemented": true, "kind": "function", "modifiers": [], @@ -7413,17 +7413,17 @@ "nameLocation": "11087:15:10", "nodeType": "FunctionDefinition", "parameters": { - "id": 2421, + "id": 2418, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2416, + "id": 2413, "mutability": "mutable", "name": "owner", "nameLocation": "11111:5:10", "nodeType": "VariableDeclaration", - "scope": 2456, + "scope": 2453, "src": "11103:13:10", "stateVariable": false, "storageLocation": "default", @@ -7432,7 +7432,7 @@ "typeString": "address" }, "typeName": { - "id": 2415, + "id": 2412, "name": "address", "nodeType": "ElementaryTypeName", "src": "11103:7:10", @@ -7446,12 +7446,12 @@ }, { "constant": false, - "id": 2418, + "id": 2415, "mutability": "mutable", "name": "spender", "nameLocation": "11126:7:10", "nodeType": "VariableDeclaration", - "scope": 2456, + "scope": 2453, "src": "11118:15:10", "stateVariable": false, "storageLocation": "default", @@ -7460,7 +7460,7 @@ "typeString": "address" }, "typeName": { - "id": 2417, + "id": 2414, "name": "address", "nodeType": "ElementaryTypeName", "src": "11118:7:10", @@ -7474,12 +7474,12 @@ }, { "constant": false, - "id": 2420, + "id": 2417, "mutability": "mutable", "name": "amount", "nameLocation": "11143:6:10", "nodeType": "VariableDeclaration", - "scope": 2456, + "scope": 2453, "src": "11135:14:10", "stateVariable": false, "storageLocation": "default", @@ -7488,7 +7488,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2419, + "id": 2416, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "11135:7:10", @@ -7503,12 +7503,12 @@ "src": "11102:48:10" }, "returnParameters": { - "id": 2422, + "id": 2419, "nodeType": "ParameterList", "parameters": [], "src": "11168:0:10" }, - "scope": 2479, + "scope": 2476, "src": "11078:411:10", "stateMutability": "nonpayable", "virtual": true, @@ -7516,18 +7516,18 @@ }, { "body": { - "id": 2466, + "id": 2463, "nodeType": "Block", "src": "12162:2:10", "statements": [] }, "documentation": { - "id": 2457, + "id": 2454, "nodeType": "StructuredDocumentation", "src": "11495:573:10", "text": " @dev Hook that is called before any transfer of tokens. This includes\n minting and burning.\n Calling conditions:\n - when `from` and `to` are both non-zero, `amount` of ``from``'s tokens\n will be transferred to `to`.\n - when `from` is zero, `amount` tokens will be minted for `to`.\n - when `to` is zero, `amount` of ``from``'s tokens will be burned.\n - `from` and `to` are never both zero.\n To learn more about hooks, head to xref:ROOT:extending-contracts.adoc#using-hooks[Using Hooks]." }, - "id": 2467, + "id": 2464, "implemented": true, "kind": "function", "modifiers": [], @@ -7535,17 +7535,17 @@ "nameLocation": "12082:20:10", "nodeType": "FunctionDefinition", "parameters": { - "id": 2464, + "id": 2461, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2459, + "id": 2456, "mutability": "mutable", "name": "from", "nameLocation": "12111:4:10", "nodeType": "VariableDeclaration", - "scope": 2467, + "scope": 2464, "src": "12103:12:10", "stateVariable": false, "storageLocation": "default", @@ -7554,7 +7554,7 @@ "typeString": "address" }, "typeName": { - "id": 2458, + "id": 2455, "name": "address", "nodeType": "ElementaryTypeName", "src": "12103:7:10", @@ -7568,12 +7568,12 @@ }, { "constant": false, - "id": 2461, + "id": 2458, "mutability": "mutable", "name": "to", "nameLocation": "12125:2:10", "nodeType": "VariableDeclaration", - "scope": 2467, + "scope": 2464, "src": "12117:10:10", "stateVariable": false, "storageLocation": "default", @@ -7582,7 +7582,7 @@ "typeString": "address" }, "typeName": { - "id": 2460, + "id": 2457, "name": "address", "nodeType": "ElementaryTypeName", "src": "12117:7:10", @@ -7596,12 +7596,12 @@ }, { "constant": false, - "id": 2463, + "id": 2460, "mutability": "mutable", "name": "amount", "nameLocation": "12137:6:10", "nodeType": "VariableDeclaration", - "scope": 2467, + "scope": 2464, "src": "12129:14:10", "stateVariable": false, "storageLocation": "default", @@ -7610,7 +7610,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2462, + "id": 2459, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "12129:7:10", @@ -7625,12 +7625,12 @@ "src": "12102:42:10" }, "returnParameters": { - "id": 2465, + "id": 2462, "nodeType": "ParameterList", "parameters": [], "src": "12162:0:10" }, - "scope": 2479, + "scope": 2476, "src": "12073:91:10", "stateMutability": "nonpayable", "virtual": true, @@ -7638,18 +7638,18 @@ }, { "body": { - "id": 2477, + "id": 2474, "nodeType": "Block", "src": "12840:2:10", "statements": [] }, "documentation": { - "id": 2468, + "id": 2465, "nodeType": "StructuredDocumentation", "src": "12170:577:10", "text": " @dev Hook that is called after any transfer of tokens. This includes\n minting and burning.\n Calling conditions:\n - when `from` and `to` are both non-zero, `amount` of ``from``'s tokens\n has been transferred to `to`.\n - when `from` is zero, `amount` tokens have been minted for `to`.\n - when `to` is zero, `amount` of ``from``'s tokens have been burned.\n - `from` and `to` are never both zero.\n To learn more about hooks, head to xref:ROOT:extending-contracts.adoc#using-hooks[Using Hooks]." }, - "id": 2478, + "id": 2475, "implemented": true, "kind": "function", "modifiers": [], @@ -7657,17 +7657,17 @@ "nameLocation": "12761:19:10", "nodeType": "FunctionDefinition", "parameters": { - "id": 2475, + "id": 2472, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2470, + "id": 2467, "mutability": "mutable", "name": "from", "nameLocation": "12789:4:10", "nodeType": "VariableDeclaration", - "scope": 2478, + "scope": 2475, "src": "12781:12:10", "stateVariable": false, "storageLocation": "default", @@ -7676,7 +7676,7 @@ "typeString": "address" }, "typeName": { - "id": 2469, + "id": 2466, "name": "address", "nodeType": "ElementaryTypeName", "src": "12781:7:10", @@ -7690,12 +7690,12 @@ }, { "constant": false, - "id": 2472, + "id": 2469, "mutability": "mutable", "name": "to", "nameLocation": "12803:2:10", "nodeType": "VariableDeclaration", - "scope": 2478, + "scope": 2475, "src": "12795:10:10", "stateVariable": false, "storageLocation": "default", @@ -7704,7 +7704,7 @@ "typeString": "address" }, "typeName": { - "id": 2471, + "id": 2468, "name": "address", "nodeType": "ElementaryTypeName", "src": "12795:7:10", @@ -7718,12 +7718,12 @@ }, { "constant": false, - "id": 2474, + "id": 2471, "mutability": "mutable", "name": "amount", "nameLocation": "12815:6:10", "nodeType": "VariableDeclaration", - "scope": 2478, + "scope": 2475, "src": "12807:14:10", "stateVariable": false, "storageLocation": "default", @@ -7732,7 +7732,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2473, + "id": 2470, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "12807:7:10", @@ -7747,19 +7747,19 @@ "src": "12780:42:10" }, "returnParameters": { - "id": 2476, + "id": 2473, "nodeType": "ParameterList", "parameters": [], "src": "12840:0:10" }, - "scope": 2479, + "scope": 2476, "src": "12752:90:10", "stateMutability": "nonpayable", "virtual": true, "visibility": "internal" } ], - "scope": 2480, + "scope": 2477, "src": "1532:11312:10", "usedErrors": [] } @@ -7770,24 +7770,24 @@ "absolutePath": "@openzeppelin/contracts/token/ERC20/ERC20.sol", "exportedSymbols": { "Context": [ - 2612 + 2609 ], "ERC20": [ - 2479 + 2476 ], "IERC20": [ - 2557 + 2554 ], "IERC20Metadata": [ - 2582 + 2579 ] }, - "id": 2480, + "id": 2477, "license": "MIT", "nodeType": "SourceUnit", "nodes": [ { - "id": 1894, + "id": 1891, "literals": [ "solidity", "^", @@ -7800,11 +7800,11 @@ { "absolutePath": "@openzeppelin/contracts/token/ERC20/IERC20.sol", "file": "./IERC20.sol", - "id": 1895, + "id": 1892, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", - "scope": 2480, - "sourceUnit": 2558, + "scope": 2477, + "sourceUnit": 2555, "src": "130:22:10", "symbolAliases": [], "unitAlias": "" @@ -7812,11 +7812,11 @@ { "absolutePath": "@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol", "file": "./extensions/IERC20Metadata.sol", - "id": 1896, + "id": 1893, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", - "scope": 2480, - "sourceUnit": 2583, + "scope": 2477, + "sourceUnit": 2580, "src": "153:41:10", "symbolAliases": [], "unitAlias": "" @@ -7824,11 +7824,11 @@ { "absolutePath": "@openzeppelin/contracts/utils/Context.sol", "file": "../../utils/Context.sol", - "id": 1897, + "id": 1894, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", - "scope": 2480, - "sourceUnit": 2613, + "scope": 2477, + "sourceUnit": 2610, "src": "195:33:10", "symbolAliases": [], "unitAlias": "" @@ -7838,46 +7838,46 @@ "baseContracts": [ { "baseName": { - "id": 1899, + "id": 1896, "name": "Context", "nameLocations": [ "1550:7:10" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 2612, + "referencedDeclaration": 2609, "src": "1550:7:10" }, - "id": 1900, + "id": 1897, "nodeType": "InheritanceSpecifier", "src": "1550:7:10" }, { "baseName": { - "id": 1901, + "id": 1898, "name": "IERC20", "nameLocations": [ "1559:6:10" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 2557, + "referencedDeclaration": 2554, "src": "1559:6:10" }, - "id": 1902, + "id": 1899, "nodeType": "InheritanceSpecifier", "src": "1559:6:10" }, { "baseName": { - "id": 1903, + "id": 1900, "name": "IERC20Metadata", "nameLocations": [ "1567:14:10" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 2582, + "referencedDeclaration": 2579, "src": "1567:14:10" }, - "id": 1904, + "id": 1901, "nodeType": "InheritanceSpecifier", "src": "1567:14:10" } @@ -7886,18 +7886,18 @@ "contractDependencies": [], "contractKind": "contract", "documentation": { - "id": 1898, + "id": 1895, "nodeType": "StructuredDocumentation", "src": "230:1301:10", "text": " @dev Implementation of the {IERC20} interface.\n This implementation is agnostic to the way tokens are created. This means\n that a supply mechanism has to be added in a derived contract using {_mint}.\n For a generic mechanism see {ERC20PresetMinterPauser}.\n TIP: For a detailed writeup see our guide\n https://forum.openzeppelin.com/t/how-to-implement-erc20-supply-mechanisms/226[How\n to implement supply mechanisms].\n The default value of {decimals} is 18. To change this, you should override\n this function so it returns a different value.\n We have followed general OpenZeppelin Contracts guidelines: functions revert\n instead returning `false` on failure. This behavior is nonetheless\n conventional and does not conflict with the expectations of ERC20\n applications.\n Additionally, an {Approval} event is emitted on calls to {transferFrom}.\n This allows applications to reconstruct the allowance for all accounts just\n by listening to said events. Other implementations of the EIP may not emit\n these events, as it isn't required by the specification.\n Finally, the non-standard {decreaseAllowance} and {increaseAllowance}\n functions have been added to mitigate the well-known issues around setting\n allowances. See {IERC20-approve}." }, "fullyImplemented": true, - "id": 2479, + "id": 2476, "linearizedBaseContracts": [ - 2479, - 2582, - 2557, - 2612 + 2476, + 2579, + 2554, + 2609 ], "name": "ERC20", "nameLocation": "1541:5:10", @@ -7905,12 +7905,12 @@ "nodes": [ { "constant": false, - "id": 1908, + "id": 1905, "mutability": "mutable", "name": "_balances", "nameLocation": "1624:9:10", "nodeType": "VariableDeclaration", - "scope": 2479, + "scope": 2476, "src": "1588:45:10", "stateVariable": true, "storageLocation": "default", @@ -7919,11 +7919,11 @@ "typeString": "mapping(address => uint256)" }, "typeName": { - "id": 1907, + "id": 1904, "keyName": "", "keyNameLocation": "-1:-1:-1", "keyType": { - "id": 1905, + "id": 1902, "name": "address", "nodeType": "ElementaryTypeName", "src": "1596:7:10", @@ -7941,7 +7941,7 @@ "valueName": "", "valueNameLocation": "-1:-1:-1", "valueType": { - "id": 1906, + "id": 1903, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1607:7:10", @@ -7955,12 +7955,12 @@ }, { "constant": false, - "id": 1914, + "id": 1911, "mutability": "mutable", "name": "_allowances", "nameLocation": "1696:11:10", "nodeType": "VariableDeclaration", - "scope": 2479, + "scope": 2476, "src": "1640:67:10", "stateVariable": true, "storageLocation": "default", @@ -7969,11 +7969,11 @@ "typeString": "mapping(address => mapping(address => uint256))" }, "typeName": { - "id": 1913, + "id": 1910, "keyName": "", "keyNameLocation": "-1:-1:-1", "keyType": { - "id": 1909, + "id": 1906, "name": "address", "nodeType": "ElementaryTypeName", "src": "1648:7:10", @@ -7991,11 +7991,11 @@ "valueName": "", "valueNameLocation": "-1:-1:-1", "valueType": { - "id": 1912, + "id": 1909, "keyName": "", "keyNameLocation": "-1:-1:-1", "keyType": { - "id": 1910, + "id": 1907, "name": "address", "nodeType": "ElementaryTypeName", "src": "1667:7:10", @@ -8013,7 +8013,7 @@ "valueName": "", "valueNameLocation": "-1:-1:-1", "valueType": { - "id": 1911, + "id": 1908, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1678:7:10", @@ -8028,12 +8028,12 @@ }, { "constant": false, - "id": 1916, + "id": 1913, "mutability": "mutable", "name": "_totalSupply", "nameLocation": "1730:12:10", "nodeType": "VariableDeclaration", - "scope": 2479, + "scope": 2476, "src": "1714:28:10", "stateVariable": true, "storageLocation": "default", @@ -8042,7 +8042,7 @@ "typeString": "uint256" }, "typeName": { - "id": 1915, + "id": 1912, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1714:7:10", @@ -8055,12 +8055,12 @@ }, { "constant": false, - "id": 1918, + "id": 1915, "mutability": "mutable", "name": "_name", "nameLocation": "1764:5:10", "nodeType": "VariableDeclaration", - "scope": 2479, + "scope": 2476, "src": "1749:20:10", "stateVariable": true, "storageLocation": "default", @@ -8069,7 +8069,7 @@ "typeString": "string" }, "typeName": { - "id": 1917, + "id": 1914, "name": "string", "nodeType": "ElementaryTypeName", "src": "1749:6:10", @@ -8082,12 +8082,12 @@ }, { "constant": false, - "id": 1920, + "id": 1917, "mutability": "mutable", "name": "_symbol", "nameLocation": "1790:7:10", "nodeType": "VariableDeclaration", - "scope": 2479, + "scope": 2476, "src": "1775:22:10", "stateVariable": true, "storageLocation": "default", @@ -8096,7 +8096,7 @@ "typeString": "string" }, "typeName": { - "id": 1919, + "id": 1916, "name": "string", "nodeType": "ElementaryTypeName", "src": "1775:6:10", @@ -8109,23 +8109,23 @@ }, { "body": { - "id": 1936, + "id": 1933, "nodeType": "Block", "src": "2036:57:10", "statements": [ { "expression": { - "id": 1930, + "id": 1927, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 1928, + "id": 1925, "name": "_name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1918, + "referencedDeclaration": 1915, "src": "2046:5:10", "typeDescriptions": { "typeIdentifier": "t_string_storage", @@ -8135,11 +8135,11 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 1929, + "id": 1926, "name": "name_", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1923, + "referencedDeclaration": 1920, "src": "2054:5:10", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", @@ -8152,23 +8152,23 @@ "typeString": "string storage ref" } }, - "id": 1931, + "id": 1928, "nodeType": "ExpressionStatement", "src": "2046:13:10" }, { "expression": { - "id": 1934, + "id": 1931, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 1932, + "id": 1929, "name": "_symbol", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1920, + "referencedDeclaration": 1917, "src": "2069:7:10", "typeDescriptions": { "typeIdentifier": "t_string_storage", @@ -8178,11 +8178,11 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 1933, + "id": 1930, "name": "symbol_", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1925, + "referencedDeclaration": 1922, "src": "2079:7:10", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", @@ -8195,19 +8195,19 @@ "typeString": "string storage ref" } }, - "id": 1935, + "id": 1932, "nodeType": "ExpressionStatement", "src": "2069:17:10" } ] }, "documentation": { - "id": 1921, + "id": 1918, "nodeType": "StructuredDocumentation", "src": "1804:171:10", "text": " @dev Sets the values for {name} and {symbol}.\n All two of these values are immutable: they can only be set once during\n construction." }, - "id": 1937, + "id": 1934, "implemented": true, "kind": "constructor", "modifiers": [], @@ -8215,17 +8215,17 @@ "nameLocation": "-1:-1:-1", "nodeType": "FunctionDefinition", "parameters": { - "id": 1926, + "id": 1923, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1923, + "id": 1920, "mutability": "mutable", "name": "name_", "nameLocation": "2006:5:10", "nodeType": "VariableDeclaration", - "scope": 1937, + "scope": 1934, "src": "1992:19:10", "stateVariable": false, "storageLocation": "memory", @@ -8234,7 +8234,7 @@ "typeString": "string" }, "typeName": { - "id": 1922, + "id": 1919, "name": "string", "nodeType": "ElementaryTypeName", "src": "1992:6:10", @@ -8247,12 +8247,12 @@ }, { "constant": false, - "id": 1925, + "id": 1922, "mutability": "mutable", "name": "symbol_", "nameLocation": "2027:7:10", "nodeType": "VariableDeclaration", - "scope": 1937, + "scope": 1934, "src": "2013:21:10", "stateVariable": false, "storageLocation": "memory", @@ -8261,7 +8261,7 @@ "typeString": "string" }, "typeName": { - "id": 1924, + "id": 1921, "name": "string", "nodeType": "ElementaryTypeName", "src": "2013:6:10", @@ -8276,12 +8276,12 @@ "src": "1991:44:10" }, "returnParameters": { - "id": 1927, + "id": 1924, "nodeType": "ParameterList", "parameters": [], "src": "2036:0:10" }, - "scope": 2479, + "scope": 2476, "src": "1980:113:10", "stateMutability": "nonpayable", "virtual": false, @@ -8289,41 +8289,41 @@ }, { "baseFunctions": [ - 2569 + 2566 ], "body": { - "id": 1946, + "id": 1943, "nodeType": "Block", "src": "2227:29:10", "statements": [ { "expression": { - "id": 1944, + "id": 1941, "name": "_name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1918, + "referencedDeclaration": 1915, "src": "2244:5:10", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" } }, - "functionReturnParameters": 1943, - "id": 1945, + "functionReturnParameters": 1940, + "id": 1942, "nodeType": "Return", "src": "2237:12:10" } ] }, "documentation": { - "id": 1938, + "id": 1935, "nodeType": "StructuredDocumentation", "src": "2099:54:10", "text": " @dev Returns the name of the token." }, "functionSelector": "06fdde03", - "id": 1947, + "id": 1944, "implemented": true, "kind": "function", "modifiers": [], @@ -8331,29 +8331,29 @@ "nameLocation": "2167:4:10", "nodeType": "FunctionDefinition", "overrides": { - "id": 1940, + "id": 1937, "nodeType": "OverrideSpecifier", "overrides": [], "src": "2194:8:10" }, "parameters": { - "id": 1939, + "id": 1936, "nodeType": "ParameterList", "parameters": [], "src": "2171:2:10" }, "returnParameters": { - "id": 1943, + "id": 1940, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1942, + "id": 1939, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 1947, + "scope": 1944, "src": "2212:13:10", "stateVariable": false, "storageLocation": "memory", @@ -8362,7 +8362,7 @@ "typeString": "string" }, "typeName": { - "id": 1941, + "id": 1938, "name": "string", "nodeType": "ElementaryTypeName", "src": "2212:6:10", @@ -8376,7 +8376,7 @@ ], "src": "2211:15:10" }, - "scope": 2479, + "scope": 2476, "src": "2158:98:10", "stateMutability": "view", "virtual": true, @@ -8384,41 +8384,41 @@ }, { "baseFunctions": [ - 2575 + 2572 ], "body": { - "id": 1956, + "id": 1953, "nodeType": "Block", "src": "2440:31:10", "statements": [ { "expression": { - "id": 1954, + "id": 1951, "name": "_symbol", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1920, + "referencedDeclaration": 1917, "src": "2457:7:10", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" } }, - "functionReturnParameters": 1953, - "id": 1955, + "functionReturnParameters": 1950, + "id": 1952, "nodeType": "Return", "src": "2450:14:10" } ] }, "documentation": { - "id": 1948, + "id": 1945, "nodeType": "StructuredDocumentation", "src": "2262:102:10", "text": " @dev Returns the symbol of the token, usually a shorter version of the\n name." }, "functionSelector": "95d89b41", - "id": 1957, + "id": 1954, "implemented": true, "kind": "function", "modifiers": [], @@ -8426,29 +8426,29 @@ "nameLocation": "2378:6:10", "nodeType": "FunctionDefinition", "overrides": { - "id": 1950, + "id": 1947, "nodeType": "OverrideSpecifier", "overrides": [], "src": "2407:8:10" }, "parameters": { - "id": 1949, + "id": 1946, "nodeType": "ParameterList", "parameters": [], "src": "2384:2:10" }, "returnParameters": { - "id": 1953, + "id": 1950, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1952, + "id": 1949, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 1957, + "scope": 1954, "src": "2425:13:10", "stateVariable": false, "storageLocation": "memory", @@ -8457,7 +8457,7 @@ "typeString": "string" }, "typeName": { - "id": 1951, + "id": 1948, "name": "string", "nodeType": "ElementaryTypeName", "src": "2425:6:10", @@ -8471,7 +8471,7 @@ ], "src": "2424:15:10" }, - "scope": 2479, + "scope": 2476, "src": "2369:102:10", "stateMutability": "view", "virtual": true, @@ -8479,17 +8479,17 @@ }, { "baseFunctions": [ - 2581 + 2578 ], "body": { - "id": 1966, + "id": 1963, "nodeType": "Block", "src": "3169:26:10", "statements": [ { "expression": { "hexValue": "3138", - "id": 1964, + "id": 1961, "isConstant": false, "isLValue": false, "isPure": true, @@ -8503,21 +8503,21 @@ }, "value": "18" }, - "functionReturnParameters": 1963, - "id": 1965, + "functionReturnParameters": 1960, + "id": 1962, "nodeType": "Return", "src": "3179:9:10" } ] }, "documentation": { - "id": 1958, + "id": 1955, "nodeType": "StructuredDocumentation", "src": "2477:622:10", "text": " @dev Returns the number of decimals used to get its user representation.\n For example, if `decimals` equals `2`, a balance of `505` tokens should\n be displayed to a user as `5.05` (`505 / 10 ** 2`).\n Tokens usually opt for a value of 18, imitating the relationship between\n Ether and Wei. This is the default value returned by this function, unless\n it's overridden.\n NOTE: This information is only used for _display_ purposes: it in\n no way affects any of the arithmetic of the contract, including\n {IERC20-balanceOf} and {IERC20-transfer}." }, "functionSelector": "313ce567", - "id": 1967, + "id": 1964, "implemented": true, "kind": "function", "modifiers": [], @@ -8525,29 +8525,29 @@ "nameLocation": "3113:8:10", "nodeType": "FunctionDefinition", "overrides": { - "id": 1960, + "id": 1957, "nodeType": "OverrideSpecifier", "overrides": [], "src": "3144:8:10" }, "parameters": { - "id": 1959, + "id": 1956, "nodeType": "ParameterList", "parameters": [], "src": "3121:2:10" }, "returnParameters": { - "id": 1963, + "id": 1960, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1962, + "id": 1959, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 1967, + "scope": 1964, "src": "3162:5:10", "stateVariable": false, "storageLocation": "default", @@ -8556,7 +8556,7 @@ "typeString": "uint8" }, "typeName": { - "id": 1961, + "id": 1958, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "3162:5:10", @@ -8570,7 +8570,7 @@ ], "src": "3161:7:10" }, - "scope": 2479, + "scope": 2476, "src": "3104:91:10", "stateMutability": "view", "virtual": true, @@ -8578,41 +8578,41 @@ }, { "baseFunctions": [ - 2506 + 2503 ], "body": { - "id": 1976, + "id": 1973, "nodeType": "Block", "src": "3325:36:10", "statements": [ { "expression": { - "id": 1974, + "id": 1971, "name": "_totalSupply", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1916, + "referencedDeclaration": 1913, "src": "3342:12:10", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1973, - "id": 1975, + "functionReturnParameters": 1970, + "id": 1972, "nodeType": "Return", "src": "3335:19:10" } ] }, "documentation": { - "id": 1968, + "id": 1965, "nodeType": "StructuredDocumentation", "src": "3201:49:10", "text": " @dev See {IERC20-totalSupply}." }, "functionSelector": "18160ddd", - "id": 1977, + "id": 1974, "implemented": true, "kind": "function", "modifiers": [], @@ -8620,29 +8620,29 @@ "nameLocation": "3264:11:10", "nodeType": "FunctionDefinition", "overrides": { - "id": 1970, + "id": 1967, "nodeType": "OverrideSpecifier", "overrides": [], "src": "3298:8:10" }, "parameters": { - "id": 1969, + "id": 1966, "nodeType": "ParameterList", "parameters": [], "src": "3275:2:10" }, "returnParameters": { - "id": 1973, + "id": 1970, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1972, + "id": 1969, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 1977, + "scope": 1974, "src": "3316:7:10", "stateVariable": false, "storageLocation": "default", @@ -8651,7 +8651,7 @@ "typeString": "uint256" }, "typeName": { - "id": 1971, + "id": 1968, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "3316:7:10", @@ -8665,7 +8665,7 @@ ], "src": "3315:9:10" }, - "scope": 2479, + "scope": 2476, "src": "3255:106:10", "stateMutability": "view", "virtual": true, @@ -8673,34 +8673,34 @@ }, { "baseFunctions": [ - 2514 + 2511 ], "body": { - "id": 1990, + "id": 1987, "nodeType": "Block", "src": "3502:42:10", "statements": [ { "expression": { "baseExpression": { - "id": 1986, + "id": 1983, "name": "_balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1908, + "referencedDeclaration": 1905, "src": "3519:9:10", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 1988, + "id": 1985, "indexExpression": { - "id": 1987, + "id": 1984, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1980, + "referencedDeclaration": 1977, "src": "3529:7:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -8718,21 +8718,21 @@ "typeString": "uint256" } }, - "functionReturnParameters": 1985, - "id": 1989, + "functionReturnParameters": 1982, + "id": 1986, "nodeType": "Return", "src": "3512:25:10" } ] }, "documentation": { - "id": 1978, + "id": 1975, "nodeType": "StructuredDocumentation", "src": "3367:47:10", "text": " @dev See {IERC20-balanceOf}." }, "functionSelector": "70a08231", - "id": 1991, + "id": 1988, "implemented": true, "kind": "function", "modifiers": [], @@ -8740,23 +8740,23 @@ "nameLocation": "3428:9:10", "nodeType": "FunctionDefinition", "overrides": { - "id": 1982, + "id": 1979, "nodeType": "OverrideSpecifier", "overrides": [], "src": "3475:8:10" }, "parameters": { - "id": 1981, + "id": 1978, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1980, + "id": 1977, "mutability": "mutable", "name": "account", "nameLocation": "3446:7:10", "nodeType": "VariableDeclaration", - "scope": 1991, + "scope": 1988, "src": "3438:15:10", "stateVariable": false, "storageLocation": "default", @@ -8765,7 +8765,7 @@ "typeString": "address" }, "typeName": { - "id": 1979, + "id": 1976, "name": "address", "nodeType": "ElementaryTypeName", "src": "3438:7:10", @@ -8781,17 +8781,17 @@ "src": "3437:17:10" }, "returnParameters": { - "id": 1985, + "id": 1982, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1984, + "id": 1981, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 1991, + "scope": 1988, "src": "3493:7:10", "stateVariable": false, "storageLocation": "default", @@ -8800,7 +8800,7 @@ "typeString": "uint256" }, "typeName": { - "id": 1983, + "id": 1980, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "3493:7:10", @@ -8814,7 +8814,7 @@ ], "src": "3492:9:10" }, - "scope": 2479, + "scope": 2476, "src": "3419:125:10", "stateMutability": "view", "virtual": true, @@ -8822,26 +8822,26 @@ }, { "baseFunctions": [ - 2524 + 2521 ], "body": { - "id": 2015, + "id": 2012, "nodeType": "Block", "src": "3825:104:10", "statements": [ { "assignments": [ - 2003 + 2000 ], "declarations": [ { "constant": false, - "id": 2003, + "id": 2000, "mutability": "mutable", "name": "owner", "nameLocation": "3843:5:10", "nodeType": "VariableDeclaration", - "scope": 2015, + "scope": 2012, "src": "3835:13:10", "stateVariable": false, "storageLocation": "default", @@ -8850,7 +8850,7 @@ "typeString": "address" }, "typeName": { - "id": 2002, + "id": 1999, "name": "address", "nodeType": "ElementaryTypeName", "src": "3835:7:10", @@ -8863,23 +8863,23 @@ "visibility": "internal" } ], - "id": 2006, + "id": 2003, "initialValue": { "arguments": [], "expression": { "argumentTypes": [], - "id": 2004, + "id": 2001, "name": "_msgSender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2594, + "referencedDeclaration": 2591, "src": "3851:10:10", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", "typeString": "function () view returns (address)" } }, - "id": 2005, + "id": 2002, "isConstant": false, "isLValue": false, "isPure": false, @@ -8902,11 +8902,11 @@ "expression": { "arguments": [ { - "id": 2008, + "id": 2005, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2003, + "referencedDeclaration": 2000, "src": "3883:5:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -8914,11 +8914,11 @@ } }, { - "id": 2009, + "id": 2006, "name": "to", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1994, + "referencedDeclaration": 1991, "src": "3890:2:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -8926,11 +8926,11 @@ } }, { - "id": 2010, + "id": 2007, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1996, + "referencedDeclaration": 1993, "src": "3894:6:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -8953,18 +8953,18 @@ "typeString": "uint256" } ], - "id": 2007, + "id": 2004, "name": "_transfer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2239, + "referencedDeclaration": 2236, "src": "3873:9:10", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 2011, + "id": 2008, "isConstant": false, "isLValue": false, "isPure": false, @@ -8980,14 +8980,14 @@ "typeString": "tuple()" } }, - "id": 2012, + "id": 2009, "nodeType": "ExpressionStatement", "src": "3873:28:10" }, { "expression": { "hexValue": "74727565", - "id": 2013, + "id": 2010, "isConstant": false, "isLValue": false, "isPure": true, @@ -9001,21 +9001,21 @@ }, "value": "true" }, - "functionReturnParameters": 2001, - "id": 2014, + "functionReturnParameters": 1998, + "id": 2011, "nodeType": "Return", "src": "3911:11:10" } ] }, "documentation": { - "id": 1992, + "id": 1989, "nodeType": "StructuredDocumentation", "src": "3550:185:10", "text": " @dev See {IERC20-transfer}.\n Requirements:\n - `to` cannot be the zero address.\n - the caller must have a balance of at least `amount`." }, "functionSelector": "a9059cbb", - "id": 2016, + "id": 2013, "implemented": true, "kind": "function", "modifiers": [], @@ -9023,23 +9023,23 @@ "nameLocation": "3749:8:10", "nodeType": "FunctionDefinition", "overrides": { - "id": 1998, + "id": 1995, "nodeType": "OverrideSpecifier", "overrides": [], "src": "3801:8:10" }, "parameters": { - "id": 1997, + "id": 1994, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1994, + "id": 1991, "mutability": "mutable", "name": "to", "nameLocation": "3766:2:10", "nodeType": "VariableDeclaration", - "scope": 2016, + "scope": 2013, "src": "3758:10:10", "stateVariable": false, "storageLocation": "default", @@ -9048,7 +9048,7 @@ "typeString": "address" }, "typeName": { - "id": 1993, + "id": 1990, "name": "address", "nodeType": "ElementaryTypeName", "src": "3758:7:10", @@ -9062,12 +9062,12 @@ }, { "constant": false, - "id": 1996, + "id": 1993, "mutability": "mutable", "name": "amount", "nameLocation": "3778:6:10", "nodeType": "VariableDeclaration", - "scope": 2016, + "scope": 2013, "src": "3770:14:10", "stateVariable": false, "storageLocation": "default", @@ -9076,7 +9076,7 @@ "typeString": "uint256" }, "typeName": { - "id": 1995, + "id": 1992, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "3770:7:10", @@ -9091,17 +9091,17 @@ "src": "3757:28:10" }, "returnParameters": { - "id": 2001, + "id": 1998, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2000, + "id": 1997, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 2016, + "scope": 2013, "src": "3819:4:10", "stateVariable": false, "storageLocation": "default", @@ -9110,7 +9110,7 @@ "typeString": "bool" }, "typeName": { - "id": 1999, + "id": 1996, "name": "bool", "nodeType": "ElementaryTypeName", "src": "3819:4:10", @@ -9124,7 +9124,7 @@ ], "src": "3818:6:10" }, - "scope": 2479, + "scope": 2476, "src": "3740:189:10", "stateMutability": "nonpayable", "virtual": true, @@ -9132,10 +9132,10 @@ }, { "baseFunctions": [ - 2534 + 2531 ], "body": { - "id": 2033, + "id": 2030, "nodeType": "Block", "src": "4085:51:10", "statements": [ @@ -9143,24 +9143,24 @@ "expression": { "baseExpression": { "baseExpression": { - "id": 2027, + "id": 2024, "name": "_allowances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1914, + "referencedDeclaration": 1911, "src": "4102:11:10", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", "typeString": "mapping(address => mapping(address => uint256))" } }, - "id": 2029, + "id": 2026, "indexExpression": { - "id": 2028, + "id": 2025, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2019, + "referencedDeclaration": 2016, "src": "4114:5:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -9178,13 +9178,13 @@ "typeString": "mapping(address => uint256)" } }, - "id": 2031, + "id": 2028, "indexExpression": { - "id": 2030, + "id": 2027, "name": "spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2021, + "referencedDeclaration": 2018, "src": "4121:7:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -9202,21 +9202,21 @@ "typeString": "uint256" } }, - "functionReturnParameters": 2026, - "id": 2032, + "functionReturnParameters": 2023, + "id": 2029, "nodeType": "Return", "src": "4095:34:10" } ] }, "documentation": { - "id": 2017, + "id": 2014, "nodeType": "StructuredDocumentation", "src": "3935:47:10", "text": " @dev See {IERC20-allowance}." }, "functionSelector": "dd62ed3e", - "id": 2034, + "id": 2031, "implemented": true, "kind": "function", "modifiers": [], @@ -9224,23 +9224,23 @@ "nameLocation": "3996:9:10", "nodeType": "FunctionDefinition", "overrides": { - "id": 2023, + "id": 2020, "nodeType": "OverrideSpecifier", "overrides": [], "src": "4058:8:10" }, "parameters": { - "id": 2022, + "id": 2019, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2019, + "id": 2016, "mutability": "mutable", "name": "owner", "nameLocation": "4014:5:10", "nodeType": "VariableDeclaration", - "scope": 2034, + "scope": 2031, "src": "4006:13:10", "stateVariable": false, "storageLocation": "default", @@ -9249,7 +9249,7 @@ "typeString": "address" }, "typeName": { - "id": 2018, + "id": 2015, "name": "address", "nodeType": "ElementaryTypeName", "src": "4006:7:10", @@ -9263,12 +9263,12 @@ }, { "constant": false, - "id": 2021, + "id": 2018, "mutability": "mutable", "name": "spender", "nameLocation": "4029:7:10", "nodeType": "VariableDeclaration", - "scope": 2034, + "scope": 2031, "src": "4021:15:10", "stateVariable": false, "storageLocation": "default", @@ -9277,7 +9277,7 @@ "typeString": "address" }, "typeName": { - "id": 2020, + "id": 2017, "name": "address", "nodeType": "ElementaryTypeName", "src": "4021:7:10", @@ -9293,17 +9293,17 @@ "src": "4005:32:10" }, "returnParameters": { - "id": 2026, + "id": 2023, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2025, + "id": 2022, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 2034, + "scope": 2031, "src": "4076:7:10", "stateVariable": false, "storageLocation": "default", @@ -9312,7 +9312,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2024, + "id": 2021, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4076:7:10", @@ -9326,7 +9326,7 @@ ], "src": "4075:9:10" }, - "scope": 2479, + "scope": 2476, "src": "3987:149:10", "stateMutability": "view", "virtual": true, @@ -9334,26 +9334,26 @@ }, { "baseFunctions": [ - 2544 + 2541 ], "body": { - "id": 2058, + "id": 2055, "nodeType": "Block", "src": "4533:108:10", "statements": [ { "assignments": [ - 2046 + 2043 ], "declarations": [ { "constant": false, - "id": 2046, + "id": 2043, "mutability": "mutable", "name": "owner", "nameLocation": "4551:5:10", "nodeType": "VariableDeclaration", - "scope": 2058, + "scope": 2055, "src": "4543:13:10", "stateVariable": false, "storageLocation": "default", @@ -9362,7 +9362,7 @@ "typeString": "address" }, "typeName": { - "id": 2045, + "id": 2042, "name": "address", "nodeType": "ElementaryTypeName", "src": "4543:7:10", @@ -9375,23 +9375,23 @@ "visibility": "internal" } ], - "id": 2049, + "id": 2046, "initialValue": { "arguments": [], "expression": { "argumentTypes": [], - "id": 2047, + "id": 2044, "name": "_msgSender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2594, + "referencedDeclaration": 2591, "src": "4559:10:10", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", "typeString": "function () view returns (address)" } }, - "id": 2048, + "id": 2045, "isConstant": false, "isLValue": false, "isPure": false, @@ -9414,11 +9414,11 @@ "expression": { "arguments": [ { - "id": 2051, + "id": 2048, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2046, + "referencedDeclaration": 2043, "src": "4590:5:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -9426,11 +9426,11 @@ } }, { - "id": 2052, + "id": 2049, "name": "spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2037, + "referencedDeclaration": 2034, "src": "4597:7:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -9438,11 +9438,11 @@ } }, { - "id": 2053, + "id": 2050, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2039, + "referencedDeclaration": 2036, "src": "4606:6:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -9465,18 +9465,18 @@ "typeString": "uint256" } ], - "id": 2050, + "id": 2047, "name": "_approve", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2413, + "referencedDeclaration": 2410, "src": "4581:8:10", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 2054, + "id": 2051, "isConstant": false, "isLValue": false, "isPure": false, @@ -9492,14 +9492,14 @@ "typeString": "tuple()" } }, - "id": 2055, + "id": 2052, "nodeType": "ExpressionStatement", "src": "4581:32:10" }, { "expression": { "hexValue": "74727565", - "id": 2056, + "id": 2053, "isConstant": false, "isLValue": false, "isPure": true, @@ -9513,21 +9513,21 @@ }, "value": "true" }, - "functionReturnParameters": 2044, - "id": 2057, + "functionReturnParameters": 2041, + "id": 2054, "nodeType": "Return", "src": "4623:11:10" } ] }, "documentation": { - "id": 2035, + "id": 2032, "nodeType": "StructuredDocumentation", "src": "4142:297:10", "text": " @dev See {IERC20-approve}.\n NOTE: If `amount` is the maximum `uint256`, the allowance is not updated on\n `transferFrom`. This is semantically equivalent to an infinite approval.\n Requirements:\n - `spender` cannot be the zero address." }, "functionSelector": "095ea7b3", - "id": 2059, + "id": 2056, "implemented": true, "kind": "function", "modifiers": [], @@ -9535,23 +9535,23 @@ "nameLocation": "4453:7:10", "nodeType": "FunctionDefinition", "overrides": { - "id": 2041, + "id": 2038, "nodeType": "OverrideSpecifier", "overrides": [], "src": "4509:8:10" }, "parameters": { - "id": 2040, + "id": 2037, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2037, + "id": 2034, "mutability": "mutable", "name": "spender", "nameLocation": "4469:7:10", "nodeType": "VariableDeclaration", - "scope": 2059, + "scope": 2056, "src": "4461:15:10", "stateVariable": false, "storageLocation": "default", @@ -9560,7 +9560,7 @@ "typeString": "address" }, "typeName": { - "id": 2036, + "id": 2033, "name": "address", "nodeType": "ElementaryTypeName", "src": "4461:7:10", @@ -9574,12 +9574,12 @@ }, { "constant": false, - "id": 2039, + "id": 2036, "mutability": "mutable", "name": "amount", "nameLocation": "4486:6:10", "nodeType": "VariableDeclaration", - "scope": 2059, + "scope": 2056, "src": "4478:14:10", "stateVariable": false, "storageLocation": "default", @@ -9588,7 +9588,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2038, + "id": 2035, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4478:7:10", @@ -9603,17 +9603,17 @@ "src": "4460:33:10" }, "returnParameters": { - "id": 2044, + "id": 2041, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2043, + "id": 2040, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 2059, + "scope": 2056, "src": "4527:4:10", "stateVariable": false, "storageLocation": "default", @@ -9622,7 +9622,7 @@ "typeString": "bool" }, "typeName": { - "id": 2042, + "id": 2039, "name": "bool", "nodeType": "ElementaryTypeName", "src": "4527:4:10", @@ -9636,7 +9636,7 @@ ], "src": "4526:6:10" }, - "scope": 2479, + "scope": 2476, "src": "4444:197:10", "stateMutability": "nonpayable", "virtual": true, @@ -9644,26 +9644,26 @@ }, { "baseFunctions": [ - 2556 + 2553 ], "body": { - "id": 2091, + "id": 2088, "nodeType": "Block", "src": "5306:153:10", "statements": [ { "assignments": [ - 2073 + 2070 ], "declarations": [ { "constant": false, - "id": 2073, + "id": 2070, "mutability": "mutable", "name": "spender", "nameLocation": "5324:7:10", "nodeType": "VariableDeclaration", - "scope": 2091, + "scope": 2088, "src": "5316:15:10", "stateVariable": false, "storageLocation": "default", @@ -9672,7 +9672,7 @@ "typeString": "address" }, "typeName": { - "id": 2072, + "id": 2069, "name": "address", "nodeType": "ElementaryTypeName", "src": "5316:7:10", @@ -9685,23 +9685,23 @@ "visibility": "internal" } ], - "id": 2076, + "id": 2073, "initialValue": { "arguments": [], "expression": { "argumentTypes": [], - "id": 2074, + "id": 2071, "name": "_msgSender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2594, + "referencedDeclaration": 2591, "src": "5334:10:10", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", "typeString": "function () view returns (address)" } }, - "id": 2075, + "id": 2072, "isConstant": false, "isLValue": false, "isPure": false, @@ -9724,11 +9724,11 @@ "expression": { "arguments": [ { - "id": 2078, + "id": 2075, "name": "from", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2062, + "referencedDeclaration": 2059, "src": "5372:4:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -9736,11 +9736,11 @@ } }, { - "id": 2079, + "id": 2076, "name": "spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2073, + "referencedDeclaration": 2070, "src": "5378:7:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -9748,11 +9748,11 @@ } }, { - "id": 2080, + "id": 2077, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2066, + "referencedDeclaration": 2063, "src": "5387:6:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -9775,18 +9775,18 @@ "typeString": "uint256" } ], - "id": 2077, + "id": 2074, "name": "_spendAllowance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2456, + "referencedDeclaration": 2453, "src": "5356:15:10", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 2081, + "id": 2078, "isConstant": false, "isLValue": false, "isPure": false, @@ -9802,7 +9802,7 @@ "typeString": "tuple()" } }, - "id": 2082, + "id": 2079, "nodeType": "ExpressionStatement", "src": "5356:38:10" }, @@ -9810,11 +9810,11 @@ "expression": { "arguments": [ { - "id": 2084, + "id": 2081, "name": "from", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2062, + "referencedDeclaration": 2059, "src": "5414:4:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -9822,11 +9822,11 @@ } }, { - "id": 2085, + "id": 2082, "name": "to", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2064, + "referencedDeclaration": 2061, "src": "5420:2:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -9834,11 +9834,11 @@ } }, { - "id": 2086, + "id": 2083, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2066, + "referencedDeclaration": 2063, "src": "5424:6:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -9861,18 +9861,18 @@ "typeString": "uint256" } ], - "id": 2083, + "id": 2080, "name": "_transfer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2239, + "referencedDeclaration": 2236, "src": "5404:9:10", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 2087, + "id": 2084, "isConstant": false, "isLValue": false, "isPure": false, @@ -9888,14 +9888,14 @@ "typeString": "tuple()" } }, - "id": 2088, + "id": 2085, "nodeType": "ExpressionStatement", "src": "5404:27:10" }, { "expression": { "hexValue": "74727565", - "id": 2089, + "id": 2086, "isConstant": false, "isLValue": false, "isPure": true, @@ -9909,21 +9909,21 @@ }, "value": "true" }, - "functionReturnParameters": 2071, - "id": 2090, + "functionReturnParameters": 2068, + "id": 2087, "nodeType": "Return", "src": "5441:11:10" } ] }, "documentation": { - "id": 2060, + "id": 2057, "nodeType": "StructuredDocumentation", "src": "4647:551:10", "text": " @dev See {IERC20-transferFrom}.\n Emits an {Approval} event indicating the updated allowance. This is not\n required by the EIP. See the note at the beginning of {ERC20}.\n NOTE: Does not update the allowance if the current allowance\n is the maximum `uint256`.\n Requirements:\n - `from` and `to` cannot be the zero address.\n - `from` must have a balance of at least `amount`.\n - the caller must have allowance for ``from``'s tokens of at least\n `amount`." }, "functionSelector": "23b872dd", - "id": 2092, + "id": 2089, "implemented": true, "kind": "function", "modifiers": [], @@ -9931,23 +9931,23 @@ "nameLocation": "5212:12:10", "nodeType": "FunctionDefinition", "overrides": { - "id": 2068, + "id": 2065, "nodeType": "OverrideSpecifier", "overrides": [], "src": "5282:8:10" }, "parameters": { - "id": 2067, + "id": 2064, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2062, + "id": 2059, "mutability": "mutable", "name": "from", "nameLocation": "5233:4:10", "nodeType": "VariableDeclaration", - "scope": 2092, + "scope": 2089, "src": "5225:12:10", "stateVariable": false, "storageLocation": "default", @@ -9956,7 +9956,7 @@ "typeString": "address" }, "typeName": { - "id": 2061, + "id": 2058, "name": "address", "nodeType": "ElementaryTypeName", "src": "5225:7:10", @@ -9970,12 +9970,12 @@ }, { "constant": false, - "id": 2064, + "id": 2061, "mutability": "mutable", "name": "to", "nameLocation": "5247:2:10", "nodeType": "VariableDeclaration", - "scope": 2092, + "scope": 2089, "src": "5239:10:10", "stateVariable": false, "storageLocation": "default", @@ -9984,7 +9984,7 @@ "typeString": "address" }, "typeName": { - "id": 2063, + "id": 2060, "name": "address", "nodeType": "ElementaryTypeName", "src": "5239:7:10", @@ -9998,12 +9998,12 @@ }, { "constant": false, - "id": 2066, + "id": 2063, "mutability": "mutable", "name": "amount", "nameLocation": "5259:6:10", "nodeType": "VariableDeclaration", - "scope": 2092, + "scope": 2089, "src": "5251:14:10", "stateVariable": false, "storageLocation": "default", @@ -10012,7 +10012,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2065, + "id": 2062, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "5251:7:10", @@ -10027,17 +10027,17 @@ "src": "5224:42:10" }, "returnParameters": { - "id": 2071, + "id": 2068, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2070, + "id": 2067, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 2092, + "scope": 2089, "src": "5300:4:10", "stateVariable": false, "storageLocation": "default", @@ -10046,7 +10046,7 @@ "typeString": "bool" }, "typeName": { - "id": 2069, + "id": 2066, "name": "bool", "nodeType": "ElementaryTypeName", "src": "5300:4:10", @@ -10060,7 +10060,7 @@ ], "src": "5299:6:10" }, - "scope": 2479, + "scope": 2476, "src": "5203:256:10", "stateMutability": "nonpayable", "virtual": true, @@ -10068,23 +10068,23 @@ }, { "body": { - "id": 2120, + "id": 2117, "nodeType": "Block", "src": "5948:140:10", "statements": [ { "assignments": [ - 2103 + 2100 ], "declarations": [ { "constant": false, - "id": 2103, + "id": 2100, "mutability": "mutable", "name": "owner", "nameLocation": "5966:5:10", "nodeType": "VariableDeclaration", - "scope": 2120, + "scope": 2117, "src": "5958:13:10", "stateVariable": false, "storageLocation": "default", @@ -10093,7 +10093,7 @@ "typeString": "address" }, "typeName": { - "id": 2102, + "id": 2099, "name": "address", "nodeType": "ElementaryTypeName", "src": "5958:7:10", @@ -10106,23 +10106,23 @@ "visibility": "internal" } ], - "id": 2106, + "id": 2103, "initialValue": { "arguments": [], "expression": { "argumentTypes": [], - "id": 2104, + "id": 2101, "name": "_msgSender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2594, + "referencedDeclaration": 2591, "src": "5974:10:10", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", "typeString": "function () view returns (address)" } }, - "id": 2105, + "id": 2102, "isConstant": false, "isLValue": false, "isPure": false, @@ -10145,11 +10145,11 @@ "expression": { "arguments": [ { - "id": 2108, + "id": 2105, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2103, + "referencedDeclaration": 2100, "src": "6005:5:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -10157,11 +10157,11 @@ } }, { - "id": 2109, + "id": 2106, "name": "spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2095, + "referencedDeclaration": 2092, "src": "6012:7:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -10173,7 +10173,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2115, + "id": 2112, "isConstant": false, "isLValue": false, "isPure": false, @@ -10181,11 +10181,11 @@ "leftExpression": { "arguments": [ { - "id": 2111, + "id": 2108, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2103, + "referencedDeclaration": 2100, "src": "6031:5:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -10193,11 +10193,11 @@ } }, { - "id": 2112, + "id": 2109, "name": "spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2095, + "referencedDeclaration": 2092, "src": "6038:7:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -10216,18 +10216,18 @@ "typeString": "address" } ], - "id": 2110, + "id": 2107, "name": "allowance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2034, + "referencedDeclaration": 2031, "src": "6021:9:10", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$_t_address_$returns$_t_uint256_$", "typeString": "function (address,address) view returns (uint256)" } }, - "id": 2113, + "id": 2110, "isConstant": false, "isLValue": false, "isPure": false, @@ -10246,11 +10246,11 @@ "nodeType": "BinaryOperation", "operator": "+", "rightExpression": { - "id": 2114, + "id": 2111, "name": "addedValue", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2097, + "referencedDeclaration": 2094, "src": "6049:10:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -10279,18 +10279,18 @@ "typeString": "uint256" } ], - "id": 2107, + "id": 2104, "name": "_approve", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2413, + "referencedDeclaration": 2410, "src": "5996:8:10", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 2116, + "id": 2113, "isConstant": false, "isLValue": false, "isPure": false, @@ -10306,14 +10306,14 @@ "typeString": "tuple()" } }, - "id": 2117, + "id": 2114, "nodeType": "ExpressionStatement", "src": "5996:64:10" }, { "expression": { "hexValue": "74727565", - "id": 2118, + "id": 2115, "isConstant": false, "isLValue": false, "isPure": true, @@ -10327,21 +10327,21 @@ }, "value": "true" }, - "functionReturnParameters": 2101, - "id": 2119, + "functionReturnParameters": 2098, + "id": 2116, "nodeType": "Return", "src": "6070:11:10" } ] }, "documentation": { - "id": 2093, + "id": 2090, "nodeType": "StructuredDocumentation", "src": "5465:384:10", "text": " @dev Atomically increases the allowance granted to `spender` by the caller.\n This is an alternative to {approve} that can be used as a mitigation for\n problems described in {IERC20-approve}.\n Emits an {Approval} event indicating the updated allowance.\n Requirements:\n - `spender` cannot be the zero address." }, "functionSelector": "39509351", - "id": 2121, + "id": 2118, "implemented": true, "kind": "function", "modifiers": [], @@ -10349,17 +10349,17 @@ "nameLocation": "5863:17:10", "nodeType": "FunctionDefinition", "parameters": { - "id": 2098, + "id": 2095, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2095, + "id": 2092, "mutability": "mutable", "name": "spender", "nameLocation": "5889:7:10", "nodeType": "VariableDeclaration", - "scope": 2121, + "scope": 2118, "src": "5881:15:10", "stateVariable": false, "storageLocation": "default", @@ -10368,7 +10368,7 @@ "typeString": "address" }, "typeName": { - "id": 2094, + "id": 2091, "name": "address", "nodeType": "ElementaryTypeName", "src": "5881:7:10", @@ -10382,12 +10382,12 @@ }, { "constant": false, - "id": 2097, + "id": 2094, "mutability": "mutable", "name": "addedValue", "nameLocation": "5906:10:10", "nodeType": "VariableDeclaration", - "scope": 2121, + "scope": 2118, "src": "5898:18:10", "stateVariable": false, "storageLocation": "default", @@ -10396,7 +10396,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2096, + "id": 2093, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "5898:7:10", @@ -10411,17 +10411,17 @@ "src": "5880:37:10" }, "returnParameters": { - "id": 2101, + "id": 2098, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2100, + "id": 2097, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 2121, + "scope": 2118, "src": "5942:4:10", "stateVariable": false, "storageLocation": "default", @@ -10430,7 +10430,7 @@ "typeString": "bool" }, "typeName": { - "id": 2099, + "id": 2096, "name": "bool", "nodeType": "ElementaryTypeName", "src": "5942:4:10", @@ -10444,7 +10444,7 @@ ], "src": "5941:6:10" }, - "scope": 2479, + "scope": 2476, "src": "5854:234:10", "stateMutability": "nonpayable", "virtual": true, @@ -10452,23 +10452,23 @@ }, { "body": { - "id": 2161, + "id": 2158, "nodeType": "Block", "src": "6674:328:10", "statements": [ { "assignments": [ - 2132 + 2129 ], "declarations": [ { "constant": false, - "id": 2132, + "id": 2129, "mutability": "mutable", "name": "owner", "nameLocation": "6692:5:10", "nodeType": "VariableDeclaration", - "scope": 2161, + "scope": 2158, "src": "6684:13:10", "stateVariable": false, "storageLocation": "default", @@ -10477,7 +10477,7 @@ "typeString": "address" }, "typeName": { - "id": 2131, + "id": 2128, "name": "address", "nodeType": "ElementaryTypeName", "src": "6684:7:10", @@ -10490,23 +10490,23 @@ "visibility": "internal" } ], - "id": 2135, + "id": 2132, "initialValue": { "arguments": [], "expression": { "argumentTypes": [], - "id": 2133, + "id": 2130, "name": "_msgSender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2594, + "referencedDeclaration": 2591, "src": "6700:10:10", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", "typeString": "function () view returns (address)" } }, - "id": 2134, + "id": 2131, "isConstant": false, "isLValue": false, "isPure": false, @@ -10527,17 +10527,17 @@ }, { "assignments": [ - 2137 + 2134 ], "declarations": [ { "constant": false, - "id": 2137, + "id": 2134, "mutability": "mutable", "name": "currentAllowance", "nameLocation": "6730:16:10", "nodeType": "VariableDeclaration", - "scope": 2161, + "scope": 2158, "src": "6722:24:10", "stateVariable": false, "storageLocation": "default", @@ -10546,7 +10546,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2136, + "id": 2133, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "6722:7:10", @@ -10558,15 +10558,15 @@ "visibility": "internal" } ], - "id": 2142, + "id": 2139, "initialValue": { "arguments": [ { - "id": 2139, + "id": 2136, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2132, + "referencedDeclaration": 2129, "src": "6759:5:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -10574,11 +10574,11 @@ } }, { - "id": 2140, + "id": 2137, "name": "spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2124, + "referencedDeclaration": 2121, "src": "6766:7:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -10597,18 +10597,18 @@ "typeString": "address" } ], - "id": 2138, + "id": 2135, "name": "allowance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2034, + "referencedDeclaration": 2031, "src": "6749:9:10", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$_t_address_$returns$_t_uint256_$", "typeString": "function (address,address) view returns (uint256)" } }, - "id": 2141, + "id": 2138, "isConstant": false, "isLValue": false, "isPure": false, @@ -10635,17 +10635,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2146, + "id": 2143, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 2144, + "id": 2141, "name": "currentAllowance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2137, + "referencedDeclaration": 2134, "src": "6792:16:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -10655,11 +10655,11 @@ "nodeType": "BinaryOperation", "operator": ">=", "rightExpression": { - "id": 2145, + "id": 2142, "name": "subtractedValue", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2126, + "referencedDeclaration": 2123, "src": "6812:15:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -10674,7 +10674,7 @@ }, { "hexValue": "45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726f", - "id": 2147, + "id": 2144, "isConstant": false, "isLValue": false, "isPure": true, @@ -10700,7 +10700,7 @@ "typeString": "literal_string \"ERC20: decreased allowance below zero\"" } ], - "id": 2143, + "id": 2140, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -10714,7 +10714,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 2148, + "id": 2145, "isConstant": false, "isLValue": false, "isPure": false, @@ -10730,12 +10730,12 @@ "typeString": "tuple()" } }, - "id": 2149, + "id": 2146, "nodeType": "ExpressionStatement", "src": "6784:85:10" }, { - "id": 2158, + "id": 2155, "nodeType": "UncheckedBlock", "src": "6879:95:10", "statements": [ @@ -10743,11 +10743,11 @@ "expression": { "arguments": [ { - "id": 2151, + "id": 2148, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2132, + "referencedDeclaration": 2129, "src": "6912:5:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -10755,11 +10755,11 @@ } }, { - "id": 2152, + "id": 2149, "name": "spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2124, + "referencedDeclaration": 2121, "src": "6919:7:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -10771,17 +10771,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2155, + "id": 2152, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 2153, + "id": 2150, "name": "currentAllowance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2137, + "referencedDeclaration": 2134, "src": "6928:16:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -10791,11 +10791,11 @@ "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { - "id": 2154, + "id": 2151, "name": "subtractedValue", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2126, + "referencedDeclaration": 2123, "src": "6947:15:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -10824,18 +10824,18 @@ "typeString": "uint256" } ], - "id": 2150, + "id": 2147, "name": "_approve", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2413, + "referencedDeclaration": 2410, "src": "6903:8:10", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 2156, + "id": 2153, "isConstant": false, "isLValue": false, "isPure": false, @@ -10851,7 +10851,7 @@ "typeString": "tuple()" } }, - "id": 2157, + "id": 2154, "nodeType": "ExpressionStatement", "src": "6903:60:10" } @@ -10860,7 +10860,7 @@ { "expression": { "hexValue": "74727565", - "id": 2159, + "id": 2156, "isConstant": false, "isLValue": false, "isPure": true, @@ -10874,21 +10874,21 @@ }, "value": "true" }, - "functionReturnParameters": 2130, - "id": 2160, + "functionReturnParameters": 2127, + "id": 2157, "nodeType": "Return", "src": "6984:11:10" } ] }, "documentation": { - "id": 2122, + "id": 2119, "nodeType": "StructuredDocumentation", "src": "6094:476:10", "text": " @dev Atomically decreases the allowance granted to `spender` by the caller.\n This is an alternative to {approve} that can be used as a mitigation for\n problems described in {IERC20-approve}.\n Emits an {Approval} event indicating the updated allowance.\n Requirements:\n - `spender` cannot be the zero address.\n - `spender` must have allowance for the caller of at least\n `subtractedValue`." }, "functionSelector": "a457c2d7", - "id": 2162, + "id": 2159, "implemented": true, "kind": "function", "modifiers": [], @@ -10896,17 +10896,17 @@ "nameLocation": "6584:17:10", "nodeType": "FunctionDefinition", "parameters": { - "id": 2127, + "id": 2124, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2124, + "id": 2121, "mutability": "mutable", "name": "spender", "nameLocation": "6610:7:10", "nodeType": "VariableDeclaration", - "scope": 2162, + "scope": 2159, "src": "6602:15:10", "stateVariable": false, "storageLocation": "default", @@ -10915,7 +10915,7 @@ "typeString": "address" }, "typeName": { - "id": 2123, + "id": 2120, "name": "address", "nodeType": "ElementaryTypeName", "src": "6602:7:10", @@ -10929,12 +10929,12 @@ }, { "constant": false, - "id": 2126, + "id": 2123, "mutability": "mutable", "name": "subtractedValue", "nameLocation": "6627:15:10", "nodeType": "VariableDeclaration", - "scope": 2162, + "scope": 2159, "src": "6619:23:10", "stateVariable": false, "storageLocation": "default", @@ -10943,7 +10943,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2125, + "id": 2122, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "6619:7:10", @@ -10958,17 +10958,17 @@ "src": "6601:42:10" }, "returnParameters": { - "id": 2130, + "id": 2127, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2129, + "id": 2126, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 2162, + "scope": 2159, "src": "6668:4:10", "stateVariable": false, "storageLocation": "default", @@ -10977,7 +10977,7 @@ "typeString": "bool" }, "typeName": { - "id": 2128, + "id": 2125, "name": "bool", "nodeType": "ElementaryTypeName", "src": "6668:4:10", @@ -10991,7 +10991,7 @@ ], "src": "6667:6:10" }, - "scope": 2479, + "scope": 2476, "src": "6575:427:10", "stateMutability": "nonpayable", "virtual": true, @@ -10999,7 +10999,7 @@ }, { "body": { - "id": 2238, + "id": 2235, "nodeType": "Block", "src": "7534:710:10", "statements": [ @@ -11011,17 +11011,17 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 2178, + "id": 2175, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 2173, + "id": 2170, "name": "from", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2165, + "referencedDeclaration": 2162, "src": "7552:4:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -11034,7 +11034,7 @@ "arguments": [ { "hexValue": "30", - "id": 2176, + "id": 2173, "isConstant": false, "isLValue": false, "isPure": true, @@ -11056,7 +11056,7 @@ "typeString": "int_const 0" } ], - "id": 2175, + "id": 2172, "isConstant": false, "isLValue": false, "isPure": true, @@ -11068,14 +11068,14 @@ "typeString": "type(address)" }, "typeName": { - "id": 2174, + "id": 2171, "name": "address", "nodeType": "ElementaryTypeName", "src": "7560:7:10", "typeDescriptions": {} } }, - "id": 2177, + "id": 2174, "isConstant": false, "isLValue": false, "isPure": true, @@ -11099,7 +11099,7 @@ }, { "hexValue": "45524332303a207472616e736665722066726f6d20746865207a65726f2061646472657373", - "id": 2179, + "id": 2176, "isConstant": false, "isLValue": false, "isPure": true, @@ -11125,7 +11125,7 @@ "typeString": "literal_string \"ERC20: transfer from the zero address\"" } ], - "id": 2172, + "id": 2169, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -11139,7 +11139,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 2180, + "id": 2177, "isConstant": false, "isLValue": false, "isPure": false, @@ -11155,7 +11155,7 @@ "typeString": "tuple()" } }, - "id": 2181, + "id": 2178, "nodeType": "ExpressionStatement", "src": "7544:68:10" }, @@ -11167,17 +11167,17 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 2188, + "id": 2185, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 2183, + "id": 2180, "name": "to", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2167, + "referencedDeclaration": 2164, "src": "7630:2:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -11190,7 +11190,7 @@ "arguments": [ { "hexValue": "30", - "id": 2186, + "id": 2183, "isConstant": false, "isLValue": false, "isPure": true, @@ -11212,7 +11212,7 @@ "typeString": "int_const 0" } ], - "id": 2185, + "id": 2182, "isConstant": false, "isLValue": false, "isPure": true, @@ -11224,14 +11224,14 @@ "typeString": "type(address)" }, "typeName": { - "id": 2184, + "id": 2181, "name": "address", "nodeType": "ElementaryTypeName", "src": "7636:7:10", "typeDescriptions": {} } }, - "id": 2187, + "id": 2184, "isConstant": false, "isLValue": false, "isPure": true, @@ -11255,7 +11255,7 @@ }, { "hexValue": "45524332303a207472616e7366657220746f20746865207a65726f2061646472657373", - "id": 2189, + "id": 2186, "isConstant": false, "isLValue": false, "isPure": true, @@ -11281,7 +11281,7 @@ "typeString": "literal_string \"ERC20: transfer to the zero address\"" } ], - "id": 2182, + "id": 2179, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -11295,7 +11295,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 2190, + "id": 2187, "isConstant": false, "isLValue": false, "isPure": false, @@ -11311,7 +11311,7 @@ "typeString": "tuple()" } }, - "id": 2191, + "id": 2188, "nodeType": "ExpressionStatement", "src": "7622:64:10" }, @@ -11319,11 +11319,11 @@ "expression": { "arguments": [ { - "id": 2193, + "id": 2190, "name": "from", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2165, + "referencedDeclaration": 2162, "src": "7718:4:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -11331,11 +11331,11 @@ } }, { - "id": 2194, + "id": 2191, "name": "to", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2167, + "referencedDeclaration": 2164, "src": "7724:2:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -11343,11 +11343,11 @@ } }, { - "id": 2195, + "id": 2192, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2169, + "referencedDeclaration": 2166, "src": "7728:6:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -11370,18 +11370,18 @@ "typeString": "uint256" } ], - "id": 2192, + "id": 2189, "name": "_beforeTokenTransfer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2467, + "referencedDeclaration": 2464, "src": "7697:20:10", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 2196, + "id": 2193, "isConstant": false, "isLValue": false, "isPure": false, @@ -11397,23 +11397,23 @@ "typeString": "tuple()" } }, - "id": 2197, + "id": 2194, "nodeType": "ExpressionStatement", "src": "7697:38:10" }, { "assignments": [ - 2199 + 2196 ], "declarations": [ { "constant": false, - "id": 2199, + "id": 2196, "mutability": "mutable", "name": "fromBalance", "nameLocation": "7754:11:10", "nodeType": "VariableDeclaration", - "scope": 2238, + "scope": 2235, "src": "7746:19:10", "stateVariable": false, "storageLocation": "default", @@ -11422,7 +11422,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2198, + "id": 2195, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "7746:7:10", @@ -11434,27 +11434,27 @@ "visibility": "internal" } ], - "id": 2203, + "id": 2200, "initialValue": { "baseExpression": { - "id": 2200, + "id": 2197, "name": "_balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1908, + "referencedDeclaration": 1905, "src": "7768:9:10", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 2202, + "id": 2199, "indexExpression": { - "id": 2201, + "id": 2198, "name": "from", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2165, + "referencedDeclaration": 2162, "src": "7778:4:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -11483,17 +11483,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2207, + "id": 2204, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 2205, + "id": 2202, "name": "fromBalance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2199, + "referencedDeclaration": 2196, "src": "7801:11:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -11503,11 +11503,11 @@ "nodeType": "BinaryOperation", "operator": ">=", "rightExpression": { - "id": 2206, + "id": 2203, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2169, + "referencedDeclaration": 2166, "src": "7816:6:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -11522,7 +11522,7 @@ }, { "hexValue": "45524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e6365", - "id": 2208, + "id": 2205, "isConstant": false, "isLValue": false, "isPure": true, @@ -11548,7 +11548,7 @@ "typeString": "literal_string \"ERC20: transfer amount exceeds balance\"" } ], - "id": 2204, + "id": 2201, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -11562,7 +11562,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 2209, + "id": 2206, "isConstant": false, "isLValue": false, "isPure": false, @@ -11578,42 +11578,42 @@ "typeString": "tuple()" } }, - "id": 2210, + "id": 2207, "nodeType": "ExpressionStatement", "src": "7793:72:10" }, { - "id": 2225, + "id": 2222, "nodeType": "UncheckedBlock", "src": "7875:273:10", "statements": [ { "expression": { - "id": 2217, + "id": 2214, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 2211, + "id": 2208, "name": "_balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1908, + "referencedDeclaration": 1905, "src": "7899:9:10", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 2213, + "id": 2210, "indexExpression": { - "id": 2212, + "id": 2209, "name": "from", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2165, + "referencedDeclaration": 2162, "src": "7909:4:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -11638,17 +11638,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2216, + "id": 2213, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 2214, + "id": 2211, "name": "fromBalance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2199, + "referencedDeclaration": 2196, "src": "7917:11:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -11658,11 +11658,11 @@ "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { - "id": 2215, + "id": 2212, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2169, + "referencedDeclaration": 2166, "src": "7931:6:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -11681,37 +11681,37 @@ "typeString": "uint256" } }, - "id": 2218, + "id": 2215, "nodeType": "ExpressionStatement", "src": "7899:38:10" }, { "expression": { - "id": 2223, + "id": 2220, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 2219, + "id": 2216, "name": "_balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1908, + "referencedDeclaration": 1905, "src": "8114:9:10", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 2221, + "id": 2218, "indexExpression": { - "id": 2220, + "id": 2217, "name": "to", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2167, + "referencedDeclaration": 2164, "src": "8124:2:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -11732,11 +11732,11 @@ "nodeType": "Assignment", "operator": "+=", "rightHandSide": { - "id": 2222, + "id": 2219, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2169, + "referencedDeclaration": 2166, "src": "8131:6:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -11749,7 +11749,7 @@ "typeString": "uint256" } }, - "id": 2224, + "id": 2221, "nodeType": "ExpressionStatement", "src": "8114:23:10" } @@ -11759,11 +11759,11 @@ "eventCall": { "arguments": [ { - "id": 2227, + "id": 2224, "name": "from", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2165, + "referencedDeclaration": 2162, "src": "8172:4:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -11771,11 +11771,11 @@ } }, { - "id": 2228, + "id": 2225, "name": "to", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2167, + "referencedDeclaration": 2164, "src": "8178:2:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -11783,11 +11783,11 @@ } }, { - "id": 2229, + "id": 2226, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2169, + "referencedDeclaration": 2166, "src": "8182:6:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -11810,18 +11810,18 @@ "typeString": "uint256" } ], - "id": 2226, + "id": 2223, "name": "Transfer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2491, + "referencedDeclaration": 2488, "src": "8163:8:10", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 2230, + "id": 2227, "isConstant": false, "isLValue": false, "isPure": false, @@ -11837,7 +11837,7 @@ "typeString": "tuple()" } }, - "id": 2231, + "id": 2228, "nodeType": "EmitStatement", "src": "8158:31:10" }, @@ -11845,11 +11845,11 @@ "expression": { "arguments": [ { - "id": 2233, + "id": 2230, "name": "from", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2165, + "referencedDeclaration": 2162, "src": "8220:4:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -11857,11 +11857,11 @@ } }, { - "id": 2234, + "id": 2231, "name": "to", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2167, + "referencedDeclaration": 2164, "src": "8226:2:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -11869,11 +11869,11 @@ } }, { - "id": 2235, + "id": 2232, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2169, + "referencedDeclaration": 2166, "src": "8230:6:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -11896,18 +11896,18 @@ "typeString": "uint256" } ], - "id": 2232, + "id": 2229, "name": "_afterTokenTransfer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2478, + "referencedDeclaration": 2475, "src": "8200:19:10", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 2236, + "id": 2233, "isConstant": false, "isLValue": false, "isPure": false, @@ -11923,19 +11923,19 @@ "typeString": "tuple()" } }, - "id": 2237, + "id": 2234, "nodeType": "ExpressionStatement", "src": "8200:37:10" } ] }, "documentation": { - "id": 2163, + "id": 2160, "nodeType": "StructuredDocumentation", "src": "7008:443:10", "text": " @dev Moves `amount` of tokens from `from` to `to`.\n This internal function is equivalent to {transfer}, and can be used to\n e.g. implement automatic token fees, slashing mechanisms, etc.\n Emits a {Transfer} event.\n Requirements:\n - `from` cannot be the zero address.\n - `to` cannot be the zero address.\n - `from` must have a balance of at least `amount`." }, - "id": 2239, + "id": 2236, "implemented": true, "kind": "function", "modifiers": [], @@ -11943,17 +11943,17 @@ "nameLocation": "7465:9:10", "nodeType": "FunctionDefinition", "parameters": { - "id": 2170, + "id": 2167, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2165, + "id": 2162, "mutability": "mutable", "name": "from", "nameLocation": "7483:4:10", "nodeType": "VariableDeclaration", - "scope": 2239, + "scope": 2236, "src": "7475:12:10", "stateVariable": false, "storageLocation": "default", @@ -11962,7 +11962,7 @@ "typeString": "address" }, "typeName": { - "id": 2164, + "id": 2161, "name": "address", "nodeType": "ElementaryTypeName", "src": "7475:7:10", @@ -11976,12 +11976,12 @@ }, { "constant": false, - "id": 2167, + "id": 2164, "mutability": "mutable", "name": "to", "nameLocation": "7497:2:10", "nodeType": "VariableDeclaration", - "scope": 2239, + "scope": 2236, "src": "7489:10:10", "stateVariable": false, "storageLocation": "default", @@ -11990,7 +11990,7 @@ "typeString": "address" }, "typeName": { - "id": 2166, + "id": 2163, "name": "address", "nodeType": "ElementaryTypeName", "src": "7489:7:10", @@ -12004,12 +12004,12 @@ }, { "constant": false, - "id": 2169, + "id": 2166, "mutability": "mutable", "name": "amount", "nameLocation": "7509:6:10", "nodeType": "VariableDeclaration", - "scope": 2239, + "scope": 2236, "src": "7501:14:10", "stateVariable": false, "storageLocation": "default", @@ -12018,7 +12018,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2168, + "id": 2165, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "7501:7:10", @@ -12033,12 +12033,12 @@ "src": "7474:42:10" }, "returnParameters": { - "id": 2171, + "id": 2168, "nodeType": "ParameterList", "parameters": [], "src": "7534:0:10" }, - "scope": 2479, + "scope": 2476, "src": "7456:788:10", "stateMutability": "nonpayable", "virtual": true, @@ -12046,7 +12046,7 @@ }, { "body": { - "id": 2295, + "id": 2292, "nodeType": "Block", "src": "8585:470:10", "statements": [ @@ -12058,17 +12058,17 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 2253, + "id": 2250, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 2248, + "id": 2245, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2242, + "referencedDeclaration": 2239, "src": "8603:7:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -12081,7 +12081,7 @@ "arguments": [ { "hexValue": "30", - "id": 2251, + "id": 2248, "isConstant": false, "isLValue": false, "isPure": true, @@ -12103,7 +12103,7 @@ "typeString": "int_const 0" } ], - "id": 2250, + "id": 2247, "isConstant": false, "isLValue": false, "isPure": true, @@ -12115,14 +12115,14 @@ "typeString": "type(address)" }, "typeName": { - "id": 2249, + "id": 2246, "name": "address", "nodeType": "ElementaryTypeName", "src": "8614:7:10", "typeDescriptions": {} } }, - "id": 2252, + "id": 2249, "isConstant": false, "isLValue": false, "isPure": true, @@ -12146,7 +12146,7 @@ }, { "hexValue": "45524332303a206d696e7420746f20746865207a65726f2061646472657373", - "id": 2254, + "id": 2251, "isConstant": false, "isLValue": false, "isPure": true, @@ -12172,7 +12172,7 @@ "typeString": "literal_string \"ERC20: mint to the zero address\"" } ], - "id": 2247, + "id": 2244, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -12186,7 +12186,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 2255, + "id": 2252, "isConstant": false, "isLValue": false, "isPure": false, @@ -12202,7 +12202,7 @@ "typeString": "tuple()" } }, - "id": 2256, + "id": 2253, "nodeType": "ExpressionStatement", "src": "8595:65:10" }, @@ -12213,7 +12213,7 @@ "arguments": [ { "hexValue": "30", - "id": 2260, + "id": 2257, "isConstant": false, "isLValue": false, "isPure": true, @@ -12235,7 +12235,7 @@ "typeString": "int_const 0" } ], - "id": 2259, + "id": 2256, "isConstant": false, "isLValue": false, "isPure": true, @@ -12247,14 +12247,14 @@ "typeString": "type(address)" }, "typeName": { - "id": 2258, + "id": 2255, "name": "address", "nodeType": "ElementaryTypeName", "src": "8692:7:10", "typeDescriptions": {} } }, - "id": 2261, + "id": 2258, "isConstant": false, "isLValue": false, "isPure": true, @@ -12271,11 +12271,11 @@ } }, { - "id": 2262, + "id": 2259, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2242, + "referencedDeclaration": 2239, "src": "8704:7:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -12283,11 +12283,11 @@ } }, { - "id": 2263, + "id": 2260, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2244, + "referencedDeclaration": 2241, "src": "8713:6:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -12310,18 +12310,18 @@ "typeString": "uint256" } ], - "id": 2257, + "id": 2254, "name": "_beforeTokenTransfer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2467, + "referencedDeclaration": 2464, "src": "8671:20:10", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 2264, + "id": 2261, "isConstant": false, "isLValue": false, "isPure": false, @@ -12337,23 +12337,23 @@ "typeString": "tuple()" } }, - "id": 2265, + "id": 2262, "nodeType": "ExpressionStatement", "src": "8671:49:10" }, { "expression": { - "id": 2268, + "id": 2265, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 2266, + "id": 2263, "name": "_totalSupply", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1916, + "referencedDeclaration": 1913, "src": "8731:12:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -12363,11 +12363,11 @@ "nodeType": "Assignment", "operator": "+=", "rightHandSide": { - "id": 2267, + "id": 2264, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2244, + "referencedDeclaration": 2241, "src": "8747:6:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -12380,42 +12380,42 @@ "typeString": "uint256" } }, - "id": 2269, + "id": 2266, "nodeType": "ExpressionStatement", "src": "8731:22:10" }, { - "id": 2276, + "id": 2273, "nodeType": "UncheckedBlock", "src": "8763:175:10", "statements": [ { "expression": { - "id": 2274, + "id": 2271, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 2270, + "id": 2267, "name": "_balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1908, + "referencedDeclaration": 1905, "src": "8899:9:10", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 2272, + "id": 2269, "indexExpression": { - "id": 2271, + "id": 2268, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2242, + "referencedDeclaration": 2239, "src": "8909:7:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -12436,11 +12436,11 @@ "nodeType": "Assignment", "operator": "+=", "rightHandSide": { - "id": 2273, + "id": 2270, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2244, + "referencedDeclaration": 2241, "src": "8921:6:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -12453,7 +12453,7 @@ "typeString": "uint256" } }, - "id": 2275, + "id": 2272, "nodeType": "ExpressionStatement", "src": "8899:28:10" } @@ -12466,7 +12466,7 @@ "arguments": [ { "hexValue": "30", - "id": 2280, + "id": 2277, "isConstant": false, "isLValue": false, "isPure": true, @@ -12488,7 +12488,7 @@ "typeString": "int_const 0" } ], - "id": 2279, + "id": 2276, "isConstant": false, "isLValue": false, "isPure": true, @@ -12500,14 +12500,14 @@ "typeString": "type(address)" }, "typeName": { - "id": 2278, + "id": 2275, "name": "address", "nodeType": "ElementaryTypeName", "src": "8961:7:10", "typeDescriptions": {} } }, - "id": 2281, + "id": 2278, "isConstant": false, "isLValue": false, "isPure": true, @@ -12524,11 +12524,11 @@ } }, { - "id": 2282, + "id": 2279, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2242, + "referencedDeclaration": 2239, "src": "8973:7:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -12536,11 +12536,11 @@ } }, { - "id": 2283, + "id": 2280, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2244, + "referencedDeclaration": 2241, "src": "8982:6:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -12563,18 +12563,18 @@ "typeString": "uint256" } ], - "id": 2277, + "id": 2274, "name": "Transfer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2491, + "referencedDeclaration": 2488, "src": "8952:8:10", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 2284, + "id": 2281, "isConstant": false, "isLValue": false, "isPure": false, @@ -12590,7 +12590,7 @@ "typeString": "tuple()" } }, - "id": 2285, + "id": 2282, "nodeType": "EmitStatement", "src": "8947:42:10" }, @@ -12601,7 +12601,7 @@ "arguments": [ { "hexValue": "30", - "id": 2289, + "id": 2286, "isConstant": false, "isLValue": false, "isPure": true, @@ -12623,7 +12623,7 @@ "typeString": "int_const 0" } ], - "id": 2288, + "id": 2285, "isConstant": false, "isLValue": false, "isPure": true, @@ -12635,14 +12635,14 @@ "typeString": "type(address)" }, "typeName": { - "id": 2287, + "id": 2284, "name": "address", "nodeType": "ElementaryTypeName", "src": "9020:7:10", "typeDescriptions": {} } }, - "id": 2290, + "id": 2287, "isConstant": false, "isLValue": false, "isPure": true, @@ -12659,11 +12659,11 @@ } }, { - "id": 2291, + "id": 2288, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2242, + "referencedDeclaration": 2239, "src": "9032:7:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -12671,11 +12671,11 @@ } }, { - "id": 2292, + "id": 2289, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2244, + "referencedDeclaration": 2241, "src": "9041:6:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -12698,18 +12698,18 @@ "typeString": "uint256" } ], - "id": 2286, + "id": 2283, "name": "_afterTokenTransfer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2478, + "referencedDeclaration": 2475, "src": "9000:19:10", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 2293, + "id": 2290, "isConstant": false, "isLValue": false, "isPure": false, @@ -12725,19 +12725,19 @@ "typeString": "tuple()" } }, - "id": 2294, + "id": 2291, "nodeType": "ExpressionStatement", "src": "9000:48:10" } ] }, "documentation": { - "id": 2240, + "id": 2237, "nodeType": "StructuredDocumentation", "src": "8250:265:10", "text": "@dev Creates `amount` tokens and assigns them to `account`, increasing\n the total supply.\n Emits a {Transfer} event with `from` set to the zero address.\n Requirements:\n - `account` cannot be the zero address." }, - "id": 2296, + "id": 2293, "implemented": true, "kind": "function", "modifiers": [], @@ -12745,17 +12745,17 @@ "nameLocation": "8529:5:10", "nodeType": "FunctionDefinition", "parameters": { - "id": 2245, + "id": 2242, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2242, + "id": 2239, "mutability": "mutable", "name": "account", "nameLocation": "8543:7:10", "nodeType": "VariableDeclaration", - "scope": 2296, + "scope": 2293, "src": "8535:15:10", "stateVariable": false, "storageLocation": "default", @@ -12764,7 +12764,7 @@ "typeString": "address" }, "typeName": { - "id": 2241, + "id": 2238, "name": "address", "nodeType": "ElementaryTypeName", "src": "8535:7:10", @@ -12778,12 +12778,12 @@ }, { "constant": false, - "id": 2244, + "id": 2241, "mutability": "mutable", "name": "amount", "nameLocation": "8560:6:10", "nodeType": "VariableDeclaration", - "scope": 2296, + "scope": 2293, "src": "8552:14:10", "stateVariable": false, "storageLocation": "default", @@ -12792,7 +12792,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2243, + "id": 2240, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "8552:7:10", @@ -12807,12 +12807,12 @@ "src": "8534:33:10" }, "returnParameters": { - "id": 2246, + "id": 2243, "nodeType": "ParameterList", "parameters": [], "src": "8585:0:10" }, - "scope": 2479, + "scope": 2476, "src": "8520:535:10", "stateMutability": "nonpayable", "virtual": true, @@ -12820,7 +12820,7 @@ }, { "body": { - "id": 2367, + "id": 2364, "nodeType": "Block", "src": "9440:594:10", "statements": [ @@ -12832,17 +12832,17 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 2310, + "id": 2307, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 2305, + "id": 2302, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2299, + "referencedDeclaration": 2296, "src": "9458:7:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -12855,7 +12855,7 @@ "arguments": [ { "hexValue": "30", - "id": 2308, + "id": 2305, "isConstant": false, "isLValue": false, "isPure": true, @@ -12877,7 +12877,7 @@ "typeString": "int_const 0" } ], - "id": 2307, + "id": 2304, "isConstant": false, "isLValue": false, "isPure": true, @@ -12889,14 +12889,14 @@ "typeString": "type(address)" }, "typeName": { - "id": 2306, + "id": 2303, "name": "address", "nodeType": "ElementaryTypeName", "src": "9469:7:10", "typeDescriptions": {} } }, - "id": 2309, + "id": 2306, "isConstant": false, "isLValue": false, "isPure": true, @@ -12920,7 +12920,7 @@ }, { "hexValue": "45524332303a206275726e2066726f6d20746865207a65726f2061646472657373", - "id": 2311, + "id": 2308, "isConstant": false, "isLValue": false, "isPure": true, @@ -12946,7 +12946,7 @@ "typeString": "literal_string \"ERC20: burn from the zero address\"" } ], - "id": 2304, + "id": 2301, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -12960,7 +12960,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 2312, + "id": 2309, "isConstant": false, "isLValue": false, "isPure": false, @@ -12976,7 +12976,7 @@ "typeString": "tuple()" } }, - "id": 2313, + "id": 2310, "nodeType": "ExpressionStatement", "src": "9450:67:10" }, @@ -12984,11 +12984,11 @@ "expression": { "arguments": [ { - "id": 2315, + "id": 2312, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2299, + "referencedDeclaration": 2296, "src": "9549:7:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -12999,7 +12999,7 @@ "arguments": [ { "hexValue": "30", - "id": 2318, + "id": 2315, "isConstant": false, "isLValue": false, "isPure": true, @@ -13021,7 +13021,7 @@ "typeString": "int_const 0" } ], - "id": 2317, + "id": 2314, "isConstant": false, "isLValue": false, "isPure": true, @@ -13033,14 +13033,14 @@ "typeString": "type(address)" }, "typeName": { - "id": 2316, + "id": 2313, "name": "address", "nodeType": "ElementaryTypeName", "src": "9558:7:10", "typeDescriptions": {} } }, - "id": 2319, + "id": 2316, "isConstant": false, "isLValue": false, "isPure": true, @@ -13057,11 +13057,11 @@ } }, { - "id": 2320, + "id": 2317, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2301, + "referencedDeclaration": 2298, "src": "9570:6:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -13084,18 +13084,18 @@ "typeString": "uint256" } ], - "id": 2314, + "id": 2311, "name": "_beforeTokenTransfer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2467, + "referencedDeclaration": 2464, "src": "9528:20:10", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 2321, + "id": 2318, "isConstant": false, "isLValue": false, "isPure": false, @@ -13111,23 +13111,23 @@ "typeString": "tuple()" } }, - "id": 2322, + "id": 2319, "nodeType": "ExpressionStatement", "src": "9528:49:10" }, { "assignments": [ - 2324 + 2321 ], "declarations": [ { "constant": false, - "id": 2324, + "id": 2321, "mutability": "mutable", "name": "accountBalance", "nameLocation": "9596:14:10", "nodeType": "VariableDeclaration", - "scope": 2367, + "scope": 2364, "src": "9588:22:10", "stateVariable": false, "storageLocation": "default", @@ -13136,7 +13136,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2323, + "id": 2320, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "9588:7:10", @@ -13148,27 +13148,27 @@ "visibility": "internal" } ], - "id": 2328, + "id": 2325, "initialValue": { "baseExpression": { - "id": 2325, + "id": 2322, "name": "_balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1908, + "referencedDeclaration": 1905, "src": "9613:9:10", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 2327, + "id": 2324, "indexExpression": { - "id": 2326, + "id": 2323, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2299, + "referencedDeclaration": 2296, "src": "9623:7:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -13197,17 +13197,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2332, + "id": 2329, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 2330, + "id": 2327, "name": "accountBalance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2324, + "referencedDeclaration": 2321, "src": "9649:14:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -13217,11 +13217,11 @@ "nodeType": "BinaryOperation", "operator": ">=", "rightExpression": { - "id": 2331, + "id": 2328, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2301, + "referencedDeclaration": 2298, "src": "9667:6:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -13236,7 +13236,7 @@ }, { "hexValue": "45524332303a206275726e20616d6f756e7420657863656564732062616c616e6365", - "id": 2333, + "id": 2330, "isConstant": false, "isLValue": false, "isPure": true, @@ -13262,7 +13262,7 @@ "typeString": "literal_string \"ERC20: burn amount exceeds balance\"" } ], - "id": 2329, + "id": 2326, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -13276,7 +13276,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 2334, + "id": 2331, "isConstant": false, "isLValue": false, "isPure": false, @@ -13292,42 +13292,42 @@ "typeString": "tuple()" } }, - "id": 2335, + "id": 2332, "nodeType": "ExpressionStatement", "src": "9641:71:10" }, { - "id": 2348, + "id": 2345, "nodeType": "UncheckedBlock", "src": "9722:194:10", "statements": [ { "expression": { - "id": 2342, + "id": 2339, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 2336, + "id": 2333, "name": "_balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1908, + "referencedDeclaration": 1905, "src": "9746:9:10", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 2338, + "id": 2335, "indexExpression": { - "id": 2337, + "id": 2334, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2299, + "referencedDeclaration": 2296, "src": "9756:7:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -13352,17 +13352,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2341, + "id": 2338, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 2339, + "id": 2336, "name": "accountBalance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2324, + "referencedDeclaration": 2321, "src": "9767:14:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -13372,11 +13372,11 @@ "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { - "id": 2340, + "id": 2337, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2301, + "referencedDeclaration": 2298, "src": "9784:6:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -13395,23 +13395,23 @@ "typeString": "uint256" } }, - "id": 2343, + "id": 2340, "nodeType": "ExpressionStatement", "src": "9746:44:10" }, { "expression": { - "id": 2346, + "id": 2343, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 2344, + "id": 2341, "name": "_totalSupply", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1916, + "referencedDeclaration": 1913, "src": "9883:12:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -13421,11 +13421,11 @@ "nodeType": "Assignment", "operator": "-=", "rightHandSide": { - "id": 2345, + "id": 2342, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2301, + "referencedDeclaration": 2298, "src": "9899:6:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -13438,7 +13438,7 @@ "typeString": "uint256" } }, - "id": 2347, + "id": 2344, "nodeType": "ExpressionStatement", "src": "9883:22:10" } @@ -13448,11 +13448,11 @@ "eventCall": { "arguments": [ { - "id": 2350, + "id": 2347, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2299, + "referencedDeclaration": 2296, "src": "9940:7:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -13463,7 +13463,7 @@ "arguments": [ { "hexValue": "30", - "id": 2353, + "id": 2350, "isConstant": false, "isLValue": false, "isPure": true, @@ -13485,7 +13485,7 @@ "typeString": "int_const 0" } ], - "id": 2352, + "id": 2349, "isConstant": false, "isLValue": false, "isPure": true, @@ -13497,14 +13497,14 @@ "typeString": "type(address)" }, "typeName": { - "id": 2351, + "id": 2348, "name": "address", "nodeType": "ElementaryTypeName", "src": "9949:7:10", "typeDescriptions": {} } }, - "id": 2354, + "id": 2351, "isConstant": false, "isLValue": false, "isPure": true, @@ -13521,11 +13521,11 @@ } }, { - "id": 2355, + "id": 2352, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2301, + "referencedDeclaration": 2298, "src": "9961:6:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -13548,18 +13548,18 @@ "typeString": "uint256" } ], - "id": 2349, + "id": 2346, "name": "Transfer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2491, + "referencedDeclaration": 2488, "src": "9931:8:10", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 2356, + "id": 2353, "isConstant": false, "isLValue": false, "isPure": false, @@ -13575,7 +13575,7 @@ "typeString": "tuple()" } }, - "id": 2357, + "id": 2354, "nodeType": "EmitStatement", "src": "9926:42:10" }, @@ -13583,11 +13583,11 @@ "expression": { "arguments": [ { - "id": 2359, + "id": 2356, "name": "account", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2299, + "referencedDeclaration": 2296, "src": "9999:7:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -13598,7 +13598,7 @@ "arguments": [ { "hexValue": "30", - "id": 2362, + "id": 2359, "isConstant": false, "isLValue": false, "isPure": true, @@ -13620,7 +13620,7 @@ "typeString": "int_const 0" } ], - "id": 2361, + "id": 2358, "isConstant": false, "isLValue": false, "isPure": true, @@ -13632,14 +13632,14 @@ "typeString": "type(address)" }, "typeName": { - "id": 2360, + "id": 2357, "name": "address", "nodeType": "ElementaryTypeName", "src": "10008:7:10", "typeDescriptions": {} } }, - "id": 2363, + "id": 2360, "isConstant": false, "isLValue": false, "isPure": true, @@ -13656,11 +13656,11 @@ } }, { - "id": 2364, + "id": 2361, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2301, + "referencedDeclaration": 2298, "src": "10020:6:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -13683,18 +13683,18 @@ "typeString": "uint256" } ], - "id": 2358, + "id": 2355, "name": "_afterTokenTransfer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2478, + "referencedDeclaration": 2475, "src": "9979:19:10", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 2365, + "id": 2362, "isConstant": false, "isLValue": false, "isPure": false, @@ -13710,19 +13710,19 @@ "typeString": "tuple()" } }, - "id": 2366, + "id": 2363, "nodeType": "ExpressionStatement", "src": "9979:48:10" } ] }, "documentation": { - "id": 2297, + "id": 2294, "nodeType": "StructuredDocumentation", "src": "9061:309:10", "text": " @dev Destroys `amount` tokens from `account`, reducing the\n total supply.\n Emits a {Transfer} event with `to` set to the zero address.\n Requirements:\n - `account` cannot be the zero address.\n - `account` must have at least `amount` tokens." }, - "id": 2368, + "id": 2365, "implemented": true, "kind": "function", "modifiers": [], @@ -13730,17 +13730,17 @@ "nameLocation": "9384:5:10", "nodeType": "FunctionDefinition", "parameters": { - "id": 2302, + "id": 2299, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2299, + "id": 2296, "mutability": "mutable", "name": "account", "nameLocation": "9398:7:10", "nodeType": "VariableDeclaration", - "scope": 2368, + "scope": 2365, "src": "9390:15:10", "stateVariable": false, "storageLocation": "default", @@ -13749,7 +13749,7 @@ "typeString": "address" }, "typeName": { - "id": 2298, + "id": 2295, "name": "address", "nodeType": "ElementaryTypeName", "src": "9390:7:10", @@ -13763,12 +13763,12 @@ }, { "constant": false, - "id": 2301, + "id": 2298, "mutability": "mutable", "name": "amount", "nameLocation": "9415:6:10", "nodeType": "VariableDeclaration", - "scope": 2368, + "scope": 2365, "src": "9407:14:10", "stateVariable": false, "storageLocation": "default", @@ -13777,7 +13777,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2300, + "id": 2297, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "9407:7:10", @@ -13792,12 +13792,12 @@ "src": "9389:33:10" }, "returnParameters": { - "id": 2303, + "id": 2300, "nodeType": "ParameterList", "parameters": [], "src": "9440:0:10" }, - "scope": 2479, + "scope": 2476, "src": "9375:659:10", "stateMutability": "nonpayable", "virtual": true, @@ -13805,7 +13805,7 @@ }, { "body": { - "id": 2412, + "id": 2409, "nodeType": "Block", "src": "10540:257:10", "statements": [ @@ -13817,17 +13817,17 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 2384, + "id": 2381, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 2379, + "id": 2376, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2371, + "referencedDeclaration": 2368, "src": "10558:5:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -13840,7 +13840,7 @@ "arguments": [ { "hexValue": "30", - "id": 2382, + "id": 2379, "isConstant": false, "isLValue": false, "isPure": true, @@ -13862,7 +13862,7 @@ "typeString": "int_const 0" } ], - "id": 2381, + "id": 2378, "isConstant": false, "isLValue": false, "isPure": true, @@ -13874,14 +13874,14 @@ "typeString": "type(address)" }, "typeName": { - "id": 2380, + "id": 2377, "name": "address", "nodeType": "ElementaryTypeName", "src": "10567:7:10", "typeDescriptions": {} } }, - "id": 2383, + "id": 2380, "isConstant": false, "isLValue": false, "isPure": true, @@ -13905,7 +13905,7 @@ }, { "hexValue": "45524332303a20617070726f76652066726f6d20746865207a65726f2061646472657373", - "id": 2385, + "id": 2382, "isConstant": false, "isLValue": false, "isPure": true, @@ -13931,7 +13931,7 @@ "typeString": "literal_string \"ERC20: approve from the zero address\"" } ], - "id": 2378, + "id": 2375, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -13945,7 +13945,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 2386, + "id": 2383, "isConstant": false, "isLValue": false, "isPure": false, @@ -13961,7 +13961,7 @@ "typeString": "tuple()" } }, - "id": 2387, + "id": 2384, "nodeType": "ExpressionStatement", "src": "10550:68:10" }, @@ -13973,17 +13973,17 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 2394, + "id": 2391, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 2389, + "id": 2386, "name": "spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2373, + "referencedDeclaration": 2370, "src": "10636:7:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -13996,7 +13996,7 @@ "arguments": [ { "hexValue": "30", - "id": 2392, + "id": 2389, "isConstant": false, "isLValue": false, "isPure": true, @@ -14018,7 +14018,7 @@ "typeString": "int_const 0" } ], - "id": 2391, + "id": 2388, "isConstant": false, "isLValue": false, "isPure": true, @@ -14030,14 +14030,14 @@ "typeString": "type(address)" }, "typeName": { - "id": 2390, + "id": 2387, "name": "address", "nodeType": "ElementaryTypeName", "src": "10647:7:10", "typeDescriptions": {} } }, - "id": 2393, + "id": 2390, "isConstant": false, "isLValue": false, "isPure": true, @@ -14061,7 +14061,7 @@ }, { "hexValue": "45524332303a20617070726f766520746f20746865207a65726f2061646472657373", - "id": 2395, + "id": 2392, "isConstant": false, "isLValue": false, "isPure": true, @@ -14087,7 +14087,7 @@ "typeString": "literal_string \"ERC20: approve to the zero address\"" } ], - "id": 2388, + "id": 2385, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -14101,7 +14101,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 2396, + "id": 2393, "isConstant": false, "isLValue": false, "isPure": false, @@ -14117,13 +14117,13 @@ "typeString": "tuple()" } }, - "id": 2397, + "id": 2394, "nodeType": "ExpressionStatement", "src": "10628:68:10" }, { "expression": { - "id": 2404, + "id": 2401, "isConstant": false, "isLValue": false, "isPure": false, @@ -14131,24 +14131,24 @@ "leftHandSide": { "baseExpression": { "baseExpression": { - "id": 2398, + "id": 2395, "name": "_allowances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1914, + "referencedDeclaration": 1911, "src": "10707:11:10", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", "typeString": "mapping(address => mapping(address => uint256))" } }, - "id": 2401, + "id": 2398, "indexExpression": { - "id": 2399, + "id": 2396, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2371, + "referencedDeclaration": 2368, "src": "10719:5:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -14166,13 +14166,13 @@ "typeString": "mapping(address => uint256)" } }, - "id": 2402, + "id": 2399, "indexExpression": { - "id": 2400, + "id": 2397, "name": "spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2373, + "referencedDeclaration": 2370, "src": "10726:7:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -14193,11 +14193,11 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 2403, + "id": 2400, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2375, + "referencedDeclaration": 2372, "src": "10737:6:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -14210,7 +14210,7 @@ "typeString": "uint256" } }, - "id": 2405, + "id": 2402, "nodeType": "ExpressionStatement", "src": "10707:36:10" }, @@ -14218,11 +14218,11 @@ "eventCall": { "arguments": [ { - "id": 2407, + "id": 2404, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2371, + "referencedDeclaration": 2368, "src": "10767:5:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -14230,11 +14230,11 @@ } }, { - "id": 2408, + "id": 2405, "name": "spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2373, + "referencedDeclaration": 2370, "src": "10774:7:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -14242,11 +14242,11 @@ } }, { - "id": 2409, + "id": 2406, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2375, + "referencedDeclaration": 2372, "src": "10783:6:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -14269,18 +14269,18 @@ "typeString": "uint256" } ], - "id": 2406, + "id": 2403, "name": "Approval", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2500, + "referencedDeclaration": 2497, "src": "10758:8:10", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 2410, + "id": 2407, "isConstant": false, "isLValue": false, "isPure": false, @@ -14296,19 +14296,19 @@ "typeString": "tuple()" } }, - "id": 2411, + "id": 2408, "nodeType": "EmitStatement", "src": "10753:37:10" } ] }, "documentation": { - "id": 2369, + "id": 2366, "nodeType": "StructuredDocumentation", "src": "10040:412:10", "text": " @dev Sets `amount` as the allowance of `spender` over the `owner` s tokens.\n This internal function is equivalent to `approve`, and can be used to\n e.g. set automatic allowances for certain subsystems, etc.\n Emits an {Approval} event.\n Requirements:\n - `owner` cannot be the zero address.\n - `spender` cannot be the zero address." }, - "id": 2413, + "id": 2410, "implemented": true, "kind": "function", "modifiers": [], @@ -14316,17 +14316,17 @@ "nameLocation": "10466:8:10", "nodeType": "FunctionDefinition", "parameters": { - "id": 2376, + "id": 2373, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2371, + "id": 2368, "mutability": "mutable", "name": "owner", "nameLocation": "10483:5:10", "nodeType": "VariableDeclaration", - "scope": 2413, + "scope": 2410, "src": "10475:13:10", "stateVariable": false, "storageLocation": "default", @@ -14335,7 +14335,7 @@ "typeString": "address" }, "typeName": { - "id": 2370, + "id": 2367, "name": "address", "nodeType": "ElementaryTypeName", "src": "10475:7:10", @@ -14349,12 +14349,12 @@ }, { "constant": false, - "id": 2373, + "id": 2370, "mutability": "mutable", "name": "spender", "nameLocation": "10498:7:10", "nodeType": "VariableDeclaration", - "scope": 2413, + "scope": 2410, "src": "10490:15:10", "stateVariable": false, "storageLocation": "default", @@ -14363,7 +14363,7 @@ "typeString": "address" }, "typeName": { - "id": 2372, + "id": 2369, "name": "address", "nodeType": "ElementaryTypeName", "src": "10490:7:10", @@ -14377,12 +14377,12 @@ }, { "constant": false, - "id": 2375, + "id": 2372, "mutability": "mutable", "name": "amount", "nameLocation": "10515:6:10", "nodeType": "VariableDeclaration", - "scope": 2413, + "scope": 2410, "src": "10507:14:10", "stateVariable": false, "storageLocation": "default", @@ -14391,7 +14391,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2374, + "id": 2371, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "10507:7:10", @@ -14406,12 +14406,12 @@ "src": "10474:48:10" }, "returnParameters": { - "id": 2377, + "id": 2374, "nodeType": "ParameterList", "parameters": [], "src": "10540:0:10" }, - "scope": 2479, + "scope": 2476, "src": "10457:340:10", "stateMutability": "nonpayable", "virtual": true, @@ -14419,23 +14419,23 @@ }, { "body": { - "id": 2455, + "id": 2452, "nodeType": "Block", "src": "11168:321:10", "statements": [ { "assignments": [ - 2424 + 2421 ], "declarations": [ { "constant": false, - "id": 2424, + "id": 2421, "mutability": "mutable", "name": "currentAllowance", "nameLocation": "11186:16:10", "nodeType": "VariableDeclaration", - "scope": 2455, + "scope": 2452, "src": "11178:24:10", "stateVariable": false, "storageLocation": "default", @@ -14444,7 +14444,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2423, + "id": 2420, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "11178:7:10", @@ -14456,15 +14456,15 @@ "visibility": "internal" } ], - "id": 2429, + "id": 2426, "initialValue": { "arguments": [ { - "id": 2426, + "id": 2423, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2416, + "referencedDeclaration": 2413, "src": "11215:5:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -14472,11 +14472,11 @@ } }, { - "id": 2427, + "id": 2424, "name": "spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2418, + "referencedDeclaration": 2415, "src": "11222:7:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -14495,18 +14495,18 @@ "typeString": "address" } ], - "id": 2425, + "id": 2422, "name": "allowance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2034, + "referencedDeclaration": 2031, "src": "11205:9:10", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$_t_address_$returns$_t_uint256_$", "typeString": "function (address,address) view returns (uint256)" } }, - "id": 2428, + "id": 2425, "isConstant": false, "isLValue": false, "isPure": false, @@ -14531,17 +14531,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2436, + "id": 2433, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 2430, + "id": 2427, "name": "currentAllowance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2424, + "referencedDeclaration": 2421, "src": "11244:16:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -14554,7 +14554,7 @@ "expression": { "arguments": [ { - "id": 2433, + "id": 2430, "isConstant": false, "isLValue": false, "isPure": true, @@ -14566,7 +14566,7 @@ "typeString": "type(uint256)" }, "typeName": { - "id": 2432, + "id": 2429, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "11269:7:10", @@ -14581,7 +14581,7 @@ "typeString": "type(uint256)" } ], - "id": 2431, + "id": 2428, "name": "type", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -14592,7 +14592,7 @@ "typeString": "function () pure" } }, - "id": 2434, + "id": 2431, "isConstant": false, "isLValue": false, "isPure": true, @@ -14608,7 +14608,7 @@ "typeString": "type(uint256)" } }, - "id": 2435, + "id": 2432, "isConstant": false, "isLValue": false, "isPure": true, @@ -14628,11 +14628,11 @@ "typeString": "bool" } }, - "id": 2454, + "id": 2451, "nodeType": "IfStatement", "src": "11240:243:10", "trueBody": { - "id": 2453, + "id": 2450, "nodeType": "Block", "src": "11283:200:10", "statements": [ @@ -14644,17 +14644,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2440, + "id": 2437, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 2438, + "id": 2435, "name": "currentAllowance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2424, + "referencedDeclaration": 2421, "src": "11305:16:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -14664,11 +14664,11 @@ "nodeType": "BinaryOperation", "operator": ">=", "rightExpression": { - "id": 2439, + "id": 2436, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2420, + "referencedDeclaration": 2417, "src": "11325:6:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -14683,7 +14683,7 @@ }, { "hexValue": "45524332303a20696e73756666696369656e7420616c6c6f77616e6365", - "id": 2441, + "id": 2438, "isConstant": false, "isLValue": false, "isPure": true, @@ -14709,7 +14709,7 @@ "typeString": "literal_string \"ERC20: insufficient allowance\"" } ], - "id": 2437, + "id": 2434, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -14723,7 +14723,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 2442, + "id": 2439, "isConstant": false, "isLValue": false, "isPure": false, @@ -14739,12 +14739,12 @@ "typeString": "tuple()" } }, - "id": 2443, + "id": 2440, "nodeType": "ExpressionStatement", "src": "11297:68:10" }, { - "id": 2452, + "id": 2449, "nodeType": "UncheckedBlock", "src": "11379:94:10", "statements": [ @@ -14752,11 +14752,11 @@ "expression": { "arguments": [ { - "id": 2445, + "id": 2442, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2416, + "referencedDeclaration": 2413, "src": "11416:5:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -14764,11 +14764,11 @@ } }, { - "id": 2446, + "id": 2443, "name": "spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2418, + "referencedDeclaration": 2415, "src": "11423:7:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -14780,17 +14780,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2449, + "id": 2446, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 2447, + "id": 2444, "name": "currentAllowance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2424, + "referencedDeclaration": 2421, "src": "11432:16:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -14800,11 +14800,11 @@ "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { - "id": 2448, + "id": 2445, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2420, + "referencedDeclaration": 2417, "src": "11451:6:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -14833,18 +14833,18 @@ "typeString": "uint256" } ], - "id": 2444, + "id": 2441, "name": "_approve", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2413, + "referencedDeclaration": 2410, "src": "11407:8:10", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256)" } }, - "id": 2450, + "id": 2447, "isConstant": false, "isLValue": false, "isPure": false, @@ -14860,7 +14860,7 @@ "typeString": "tuple()" } }, - "id": 2451, + "id": 2448, "nodeType": "ExpressionStatement", "src": "11407:51:10" } @@ -14872,12 +14872,12 @@ ] }, "documentation": { - "id": 2414, + "id": 2411, "nodeType": "StructuredDocumentation", "src": "10803:270:10", "text": " @dev Updates `owner` s allowance for `spender` based on spent `amount`.\n Does not update the allowance amount in case of infinite allowance.\n Revert if not enough allowance is available.\n Might emit an {Approval} event." }, - "id": 2456, + "id": 2453, "implemented": true, "kind": "function", "modifiers": [], @@ -14885,17 +14885,17 @@ "nameLocation": "11087:15:10", "nodeType": "FunctionDefinition", "parameters": { - "id": 2421, + "id": 2418, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2416, + "id": 2413, "mutability": "mutable", "name": "owner", "nameLocation": "11111:5:10", "nodeType": "VariableDeclaration", - "scope": 2456, + "scope": 2453, "src": "11103:13:10", "stateVariable": false, "storageLocation": "default", @@ -14904,7 +14904,7 @@ "typeString": "address" }, "typeName": { - "id": 2415, + "id": 2412, "name": "address", "nodeType": "ElementaryTypeName", "src": "11103:7:10", @@ -14918,12 +14918,12 @@ }, { "constant": false, - "id": 2418, + "id": 2415, "mutability": "mutable", "name": "spender", "nameLocation": "11126:7:10", "nodeType": "VariableDeclaration", - "scope": 2456, + "scope": 2453, "src": "11118:15:10", "stateVariable": false, "storageLocation": "default", @@ -14932,7 +14932,7 @@ "typeString": "address" }, "typeName": { - "id": 2417, + "id": 2414, "name": "address", "nodeType": "ElementaryTypeName", "src": "11118:7:10", @@ -14946,12 +14946,12 @@ }, { "constant": false, - "id": 2420, + "id": 2417, "mutability": "mutable", "name": "amount", "nameLocation": "11143:6:10", "nodeType": "VariableDeclaration", - "scope": 2456, + "scope": 2453, "src": "11135:14:10", "stateVariable": false, "storageLocation": "default", @@ -14960,7 +14960,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2419, + "id": 2416, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "11135:7:10", @@ -14975,12 +14975,12 @@ "src": "11102:48:10" }, "returnParameters": { - "id": 2422, + "id": 2419, "nodeType": "ParameterList", "parameters": [], "src": "11168:0:10" }, - "scope": 2479, + "scope": 2476, "src": "11078:411:10", "stateMutability": "nonpayable", "virtual": true, @@ -14988,18 +14988,18 @@ }, { "body": { - "id": 2466, + "id": 2463, "nodeType": "Block", "src": "12162:2:10", "statements": [] }, "documentation": { - "id": 2457, + "id": 2454, "nodeType": "StructuredDocumentation", "src": "11495:573:10", "text": " @dev Hook that is called before any transfer of tokens. This includes\n minting and burning.\n Calling conditions:\n - when `from` and `to` are both non-zero, `amount` of ``from``'s tokens\n will be transferred to `to`.\n - when `from` is zero, `amount` tokens will be minted for `to`.\n - when `to` is zero, `amount` of ``from``'s tokens will be burned.\n - `from` and `to` are never both zero.\n To learn more about hooks, head to xref:ROOT:extending-contracts.adoc#using-hooks[Using Hooks]." }, - "id": 2467, + "id": 2464, "implemented": true, "kind": "function", "modifiers": [], @@ -15007,17 +15007,17 @@ "nameLocation": "12082:20:10", "nodeType": "FunctionDefinition", "parameters": { - "id": 2464, + "id": 2461, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2459, + "id": 2456, "mutability": "mutable", "name": "from", "nameLocation": "12111:4:10", "nodeType": "VariableDeclaration", - "scope": 2467, + "scope": 2464, "src": "12103:12:10", "stateVariable": false, "storageLocation": "default", @@ -15026,7 +15026,7 @@ "typeString": "address" }, "typeName": { - "id": 2458, + "id": 2455, "name": "address", "nodeType": "ElementaryTypeName", "src": "12103:7:10", @@ -15040,12 +15040,12 @@ }, { "constant": false, - "id": 2461, + "id": 2458, "mutability": "mutable", "name": "to", "nameLocation": "12125:2:10", "nodeType": "VariableDeclaration", - "scope": 2467, + "scope": 2464, "src": "12117:10:10", "stateVariable": false, "storageLocation": "default", @@ -15054,7 +15054,7 @@ "typeString": "address" }, "typeName": { - "id": 2460, + "id": 2457, "name": "address", "nodeType": "ElementaryTypeName", "src": "12117:7:10", @@ -15068,12 +15068,12 @@ }, { "constant": false, - "id": 2463, + "id": 2460, "mutability": "mutable", "name": "amount", "nameLocation": "12137:6:10", "nodeType": "VariableDeclaration", - "scope": 2467, + "scope": 2464, "src": "12129:14:10", "stateVariable": false, "storageLocation": "default", @@ -15082,7 +15082,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2462, + "id": 2459, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "12129:7:10", @@ -15097,12 +15097,12 @@ "src": "12102:42:10" }, "returnParameters": { - "id": 2465, + "id": 2462, "nodeType": "ParameterList", "parameters": [], "src": "12162:0:10" }, - "scope": 2479, + "scope": 2476, "src": "12073:91:10", "stateMutability": "nonpayable", "virtual": true, @@ -15110,18 +15110,18 @@ }, { "body": { - "id": 2477, + "id": 2474, "nodeType": "Block", "src": "12840:2:10", "statements": [] }, "documentation": { - "id": 2468, + "id": 2465, "nodeType": "StructuredDocumentation", "src": "12170:577:10", "text": " @dev Hook that is called after any transfer of tokens. This includes\n minting and burning.\n Calling conditions:\n - when `from` and `to` are both non-zero, `amount` of ``from``'s tokens\n has been transferred to `to`.\n - when `from` is zero, `amount` tokens have been minted for `to`.\n - when `to` is zero, `amount` of ``from``'s tokens have been burned.\n - `from` and `to` are never both zero.\n To learn more about hooks, head to xref:ROOT:extending-contracts.adoc#using-hooks[Using Hooks]." }, - "id": 2478, + "id": 2475, "implemented": true, "kind": "function", "modifiers": [], @@ -15129,17 +15129,17 @@ "nameLocation": "12761:19:10", "nodeType": "FunctionDefinition", "parameters": { - "id": 2475, + "id": 2472, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2470, + "id": 2467, "mutability": "mutable", "name": "from", "nameLocation": "12789:4:10", "nodeType": "VariableDeclaration", - "scope": 2478, + "scope": 2475, "src": "12781:12:10", "stateVariable": false, "storageLocation": "default", @@ -15148,7 +15148,7 @@ "typeString": "address" }, "typeName": { - "id": 2469, + "id": 2466, "name": "address", "nodeType": "ElementaryTypeName", "src": "12781:7:10", @@ -15162,12 +15162,12 @@ }, { "constant": false, - "id": 2472, + "id": 2469, "mutability": "mutable", "name": "to", "nameLocation": "12803:2:10", "nodeType": "VariableDeclaration", - "scope": 2478, + "scope": 2475, "src": "12795:10:10", "stateVariable": false, "storageLocation": "default", @@ -15176,7 +15176,7 @@ "typeString": "address" }, "typeName": { - "id": 2471, + "id": 2468, "name": "address", "nodeType": "ElementaryTypeName", "src": "12795:7:10", @@ -15190,12 +15190,12 @@ }, { "constant": false, - "id": 2474, + "id": 2471, "mutability": "mutable", "name": "amount", "nameLocation": "12815:6:10", "nodeType": "VariableDeclaration", - "scope": 2478, + "scope": 2475, "src": "12807:14:10", "stateVariable": false, "storageLocation": "default", @@ -15204,7 +15204,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2473, + "id": 2470, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "12807:7:10", @@ -15219,19 +15219,19 @@ "src": "12780:42:10" }, "returnParameters": { - "id": 2476, + "id": 2473, "nodeType": "ParameterList", "parameters": [], "src": "12840:0:10" }, - "scope": 2479, + "scope": 2476, "src": "12752:90:10", "stateMutability": "nonpayable", "virtual": true, "visibility": "internal" } ], - "scope": 2480, + "scope": 2477, "src": "1532:11312:10", "usedErrors": [] } @@ -15244,5 +15244,5 @@ }, "networks": {}, "schemaVersion": "2.0.1", - "updatedAt": "2024-06-20T09:33:52.579Z" + "updatedAt": "2024-06-27T12:24:25.269Z" } \ No newline at end of file diff --git a/build/contracts/Gateway.json b/build/contracts/Gateway.json index 6524ab8..078fa58 100644 --- a/build/contracts/Gateway.json +++ b/build/contracts/Gateway.json @@ -628,38 +628,38 @@ "type": "function" } ], - "bytecode": "0x60806040523480156200001157600080fd5b50d380156200001f57600080fd5b50d280156200002d57600080fd5b506200003e6200004460201b60201c565b620001ee565b600060019054906101000a900460ff161562000097576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200008e9062000191565b60405180910390fd5b60ff801660008054906101000a900460ff1660ff1614620001085760ff6000806101000a81548160ff021916908360ff1602179055507f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249860ff604051620000ff9190620001d1565b60405180910390a15b565b600082825260208201905092915050565b7f496e697469616c697a61626c653a20636f6e747261637420697320696e69746960008201527f616c697a696e6700000000000000000000000000000000000000000000000000602082015250565b6000620001796027836200010a565b915062000186826200011b565b604082019050919050565b60006020820190508181036000830152620001ac816200016a565b9050919050565b600060ff82169050919050565b620001cb81620001b3565b82525050565b6000602082019050620001e86000830184620001c0565b92915050565b61389f80620001fe6000396000f3fe608060405234801561001057600080fd5b50d3801561001d57600080fd5b50d2801561002a57600080fd5b50600436106101305760003560e01c8063809804f7116100bc578063b810c6361161008b578063b810c6361461029b578063cd992400146102ba578063e30c3978146102d6578063f22ee704146102f4578063f2fde38b1461032457610130565b8063809804f7146102395780638129fc1c146102695780638456cb59146102735780638da5cb5b1461027d57610130565b8063715018a611610103578063715018a61461019557806371eedb881461019f57806375151b63146101cf578063768c6ec0146101ff57806379ba50971461022f57610130565b80633f4ba83a1461013557806340ebc6771461013f57806347094e2e1461015b5780635c975abb14610177575b600080fd5b61013d610340565b005b610159600480360381019061015491906125bc565b610352565b005b6101756004803603810190610170919061263c565b61061a565b005b61017f610685565b60405161018c9190612684565b60405180910390f35b61019d61069c565b005b6101b960048036038101906101b491906126d5565b6106b0565b6040516101c69190612684565b60405180910390f35b6101e960048036038101906101e49190612715565b610b45565b6040516101f69190612684565b60405180910390f35b61021960048036038101906102149190612742565b610ba1565b604051610226919061288f565b60405180910390f35b610237610db9565b005b610253600480360381019061024e919061293c565b610e46565b6040516102609190612a0d565b60405180910390f35b6102716113b1565b005b61027b611501565b005b610285611513565b6040516102929190612a37565b60405180910390f35b6102a361153d565b6040516102b1929190612a70565b60405180910390f35b6102d460048036038101906102cf9190612a99565b611562565b005b6102de6116e7565b6040516102eb9190612a37565b60405180910390f35b61030e60048036038101906103099190612aec565b611711565b60405161031b9190612684565b60405180910390f35b61033e60048036038101906103399190612715565b611d5d565b005b610348611e0a565b610350611e88565b565b61035a611e0a565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036103c9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016103c090612bb0565b60405180910390fd5b60007f747265617375727900000000000000000000000000000000000000000000000083036104cc578173ffffffffffffffffffffffffffffffffffffffff16609860089054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1603610482576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161047990612c42565b60405180910390fd5b81609860086101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600190506105ca565b7f61676772656761746f720000000000000000000000000000000000000000000083036105c9578173ffffffffffffffffffffffffffffffffffffffff16609960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1603610583576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161057a90612cd4565b60405180910390fd5b81609960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600190505b5b8015610615578173ffffffffffffffffffffffffffffffffffffffff16837fbbc5b96e57cfecb3dbeeadf92e87f15e58e64fcd75cbe256dcc5d9ef2e51e8a460405160405180910390a35b505050565b610622611e0a565b80609860006101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055507f1ce29a697a4765bd17d91df93ba75b250b629ecf030553ff1f6ab59f15ae6c7b8160405161067a9190612cf4565b60405180910390a150565b600060cd60009054906101000a900460ff16905090565b6106a4611e0a565b6106ae6000611eeb565b565b6000609960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610742576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161073990612d5b565b60405180910390fd5b60ff600083815260200190815260200160002060050160009054906101000a900460ff16156107a6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161079d90612dc7565b60405180910390fd5b60ff600083815260200190815260200160002060050160019054906101000a900460ff161561080a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161080190612e33565b60405180910390fd5b8260ff6000848152602001908152602001600020600401541015610863576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161085a90612e9f565b60405180910390fd5b60ff600083815260200190815260200160002060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb609860089054906101000a900473ffffffffffffffffffffffffffffffffffffffff16856040518363ffffffff1660e01b81526004016108f6929190612ebf565b6020604051808303816000875af1158015610915573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109399190612f14565b50600160ff600084815260200190815260200160002060050160016101000a81548160ff021916908315150217905550600060ff600084815260200190815260200160002060060160006101000a8154816bffffffffffffffffffffffff02191690836bffffffffffffffffffffffff16021790555060008360ff60008581526020019081526020016000206004015460ff6000868152602001908152602001600020600701546109ea9190612f70565b6109f49190612fa4565b905060ff600084815260200190815260200160002060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb60ff600086815260200190815260200160002060050160029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1660ff60008781526020019081526020016000206003015484610aa19190612f70565b6040518363ffffffff1660e01b8152600401610abe929190612ebf565b6020604051808303816000875af1158015610add573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b019190612f14565b50827f0736fe428e1747ca8d387c2e6fa1a31a0cde62d3a167c40a46ade59a3cdc828e85604051610b329190612fd8565b60405180910390a2600191505092915050565b60006001609a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205403610b975760019050610b9c565b600090505b919050565b610ba9612435565b60ff6000838152602001908152602001600020604051806101400160405290816000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016001820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016002820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200160038201548152602001600482015481526020016005820160009054906101000a900460ff161515151581526020016005820160019054906101000a900460ff161515151581526020016005820160029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016006820160009054906101000a90046bffffffffffffffffffffffff166bffffffffffffffffffffffff166bffffffffffffffffffffffff1681526020016007820154815250509050919050565b6000610dc3611f1c565b90508073ffffffffffffffffffffffffffffffffffffffff16610de46116e7565b73ffffffffffffffffffffffffffffffffffffffff1614610e3a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e3190613065565b60405180910390fd5b610e4381611eeb565b50565b6000610e50611f24565b610e5d8989868989611f6e565b60008383905003610ea3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e9a906130d1565b60405180910390fd5b8873ffffffffffffffffffffffffffffffffffffffff166323b872dd3330888c610ecd9190612f70565b6040518463ffffffff1660e01b8152600401610eeb939291906130f1565b6020604051808303816000875af1158015610f0a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f2e9190612f14565b5061010060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000815480929190610f8090613128565b91905055503361010060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054604051602001610fd8929190612ebf565b6040516020818303038152906040528051906020012090506000609860009054906101000a900467ffffffffffffffff1667ffffffffffffffff166097546110209190612f70565b609860009054906101000a900467ffffffffffffffff1667ffffffffffffffff168a61104c9190613170565b61105691906131e1565b90506040518061014001604052803373ffffffffffffffffffffffffffffffffffffffff1681526020018b73ffffffffffffffffffffffffffffffffffffffff1681526020018873ffffffffffffffffffffffffffffffffffffffff1681526020018781526020018281526020016000151581526020016000151581526020018673ffffffffffffffffffffffffffffffffffffffff16815260200160975467ffffffffffffffff166bffffffffffffffffffffffff168152602001828b61111e9190612fa4565b81525060ff600084815260200190815260200160002060008201518160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060208201518160010160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060408201518160020160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550606082015181600301556080820151816004015560a08201518160050160006101000a81548160ff02191690831515021790555060c08201518160050160016101000a81548160ff02191690831515021790555060e08201518160050160026101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506101008201518160060160006101000a8154816bffffffffffffffffffffffff02191690836bffffffffffffffffffffffff160217905550610120820151816007015590505060ff6000838152602001908152602001600020600701548a73ffffffffffffffffffffffffffffffffffffffff1660ff600085815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f40ccd1ceb111a3c186ef9911e1b876dc1f789ed331b86097b3b8851055b6a13784868d8a8a60405161139c95949392919061329a565b60405180910390a45098975050505050505050565b60008060019054906101000a900460ff161590508080156113e25750600160008054906101000a900460ff1660ff16105b8061140f57506113f130612121565b15801561140e5750600160008054906101000a900460ff1660ff16145b5b61144e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114459061335a565b60405180910390fd5b60016000806101000a81548160ff021916908360ff160217905550801561148b576001600060016101000a81548160ff0219169083151502179055505b620186a060978190555061149d612144565b6114a561219d565b80156114fe5760008060016101000a81548160ff0219169083151502179055507f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249860016040516114f591906133c2565b60405180910390a15b50565b611509611e0a565b6115116121f6565b565b6000603360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600080609860009054906101000a900467ffffffffffffffff16609754915091509091565b61156a611e0a565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036115d9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115d090612bb0565b60405180910390fd5b60018114806115e85750600281145b611627576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161161e90613429565b60405180910390fd5b7f746f6b656e00000000000000000000000000000000000000000000000000000083036116e25780609a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff16837fcfa976492af7c14a916cc3a239f4c9c75bbd7f5f0e398beb41d892c7eeccae4c836040516116d99190612fd8565b60405180910390a35b505050565b6000606560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6000609960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146117a3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161179a90612d5b565b60405180910390fd5b60ff600085815260200190815260200160002060050160009054906101000a900460ff1615611807576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117fe90612dc7565b60405180910390fd5b60ff600085815260200190815260200160002060050160019054906101000a900460ff161561186b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161186290612e33565b60405180910390fd5b600060ff600086815260200190815260200160002060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508267ffffffffffffffff1660ff600087815260200190815260200160002060060160008282829054906101000a90046bffffffffffffffffffffffff166118ed9190613449565b92506101000a8154816bffffffffffffffffffffffff02191690836bffffffffffffffffffffffff160217905550600060ff600087815260200190815260200160002060060160009054906101000a90046bffffffffffffffffffffffff166bffffffffffffffffffffffff1603611c1557600160ff600087815260200190815260200160002060050160006101000a81548160ff021916908315150217905550600060ff60008781526020019081526020016000206003015414611b3e5760ff600086815260200190815260200160002060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb60ff600088815260200190815260200160002060020160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1660ff6000898152602001908152602001600020600301546040518363ffffffff1660e01b8152600401611a69929190612ebf565b6020604051808303816000875af1158015611a88573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611aac9190612f14565b5060ff60008681526020019081526020016000206003015460ff600087815260200190815260200160002060020160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f44f6938ca4a10313aabb76f874cced61e35710a734a126e4afb34461bf8c250160405160405180910390a35b600060ff60008781526020019081526020016000206004015414611c14578073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb609860089054906101000a900473ffffffffffffffffffffffffffffffffffffffff1660ff6000898152602001908152602001600020600401546040518363ffffffff1660e01b8152600401611bcf929190612ebf565b6020604051808303816000875af1158015611bee573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c129190612f14565b505b5b60006097548467ffffffffffffffff1660ff600089815260200190815260200160002060070154611c469190613170565b611c5091906131e1565b90508060ff60008881526020019081526020016000206007016000828254611c789190612fa4565b925050819055508173ffffffffffffffffffffffffffffffffffffffff1663a9059cbb86836040518363ffffffff1660e01b8152600401611cba929190612ebf565b6020604051808303816000875af1158015611cd9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611cfd9190612f14565b508473ffffffffffffffffffffffffffffffffffffffff16867f98ece21e01a01cbe1d1c0dad3b053c8fbd368f99be78be958fcf1d1d13fd249a8987604051611d479291906134ba565b60405180910390a3600192505050949350505050565b611d65611e0a565b80606560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16611dc5611513565b73ffffffffffffffffffffffffffffffffffffffff167f38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e2270060405160405180910390a350565b611e12611f1c565b73ffffffffffffffffffffffffffffffffffffffff16611e30611513565b73ffffffffffffffffffffffffffffffffffffffff1614611e86576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e7d9061352f565b60405180910390fd5b565b611e90612259565b600060cd60006101000a81548160ff0219169083151502179055507f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa611ed4611f1c565b604051611ee19190612a37565b60405180910390a1565b606560006101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055611f19816122a2565b50565b600033905090565b611f2c610685565b15611f6c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f639061359b565b60405180910390fd5b565b6001609a60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414611ff0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fe790613607565b60405180910390fd5b60008403612033576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161202a90613673565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036120a2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612099906136df565b60405180910390fd5b6000811461211a57600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603612119576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016121109061374b565b60405180910390fd5b5b5050505050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b600060019054906101000a900460ff16612193576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161218a906137dd565b60405180910390fd5b61219b612368565b565b600060019054906101000a900460ff166121ec576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016121e3906137dd565b60405180910390fd5b6121f46123c9565b565b6121fe611f24565b600160cd60006101000a81548160ff0219169083151502179055507f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258612242611f1c565b60405161224f9190612a37565b60405180910390a1565b612261610685565b6122a0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161229790613849565b60405180910390fd5b565b6000603360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081603360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600060019054906101000a900460ff166123b7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016123ae906137dd565b60405180910390fd5b6123c76123c2611f1c565b611eeb565b565b600060019054906101000a900460ff16612418576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161240f906137dd565b60405180910390fd5b600060cd60006101000a81548160ff021916908315150217905550565b604051806101400160405280600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff1681526020016000815260200160008152602001600015158152602001600015158152602001600073ffffffffffffffffffffffffffffffffffffffff16815260200160006bffffffffffffffffffffffff168152602001600081525090565b600080fd5b600080fd5b6000819050919050565b61250f816124fc565b811461251a57600080fd5b50565b60008135905061252c81612506565b92915050565b600074ffffffffffffffffffffffffffffffffffffffffff82169050919050565b61255c81612532565b811461256757600080fd5b50565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006125958261256a565b9050919050565b6000813590506125ab81612553565b6125b48161258a565b905092915050565b600080604083850312156125d3576125d26124f2565b5b60006125e18582860161251d565b92505060206125f28582860161259c565b9150509250929050565b600067ffffffffffffffff82169050919050565b612619816125fc565b811461262457600080fd5b50565b60008135905061263681612610565b92915050565b600060208284031215612652576126516124f2565b5b600061266084828501612627565b91505092915050565b60008115159050919050565b61267e81612669565b82525050565b60006020820190506126996000830184612675565b92915050565b6000819050919050565b6126b28161269f565b81146126bd57600080fd5b50565b6000813590506126cf816126a9565b92915050565b600080604083850312156126ec576126eb6124f2565b5b60006126fa858286016126c0565b925050602061270b8582860161251d565b9150509250929050565b60006020828403121561272b5761272a6124f2565b5b60006127398482850161259c565b91505092915050565b600060208284031215612758576127576124f2565b5b60006127668482850161251d565b91505092915050565b6127788161258a565b82525050565b6127878161269f565b82525050565b61279681612669565b82525050565b60006bffffffffffffffffffffffff82169050919050565b6127bd8161279c565b82525050565b610140820160008201516127da600085018261276f565b5060208201516127ed602085018261276f565b506040820151612800604085018261276f565b506060820151612813606085018261277e565b506080820151612826608085018261277e565b5060a082015161283960a085018261278d565b5060c082015161284c60c085018261278d565b5060e082015161285f60e085018261276f565b506101008201516128746101008501826127b4565b5061012082015161288961012085018261277e565b50505050565b6000610140820190506128a560008301846127c3565b92915050565b6128b48161279c565b81146128bf57600080fd5b50565b6000813590506128d1816128ab565b92915050565b600080fd5b600080fd5b600080fd5b60008083601f8401126128fc576128fb6128d7565b5b8235905067ffffffffffffffff811115612919576129186128dc565b5b602083019150836001820283011115612935576129346128e1565b5b9250929050565b60008060008060008060008060e0898b03121561295c5761295b6124f2565b5b600061296a8b828c0161259c565b985050602061297b8b828c016126c0565b975050604061298c8b828c016128c2565b965050606061299d8b828c0161259c565b95505060806129ae8b828c016126c0565b94505060a06129bf8b828c0161259c565b93505060c089013567ffffffffffffffff8111156129e0576129df6124f7565b5b6129ec8b828c016128e6565b92509250509295985092959890939650565b612a07816124fc565b82525050565b6000602082019050612a2260008301846129fe565b92915050565b612a318161258a565b82525050565b6000602082019050612a4c6000830184612a28565b92915050565b612a5b816125fc565b82525050565b612a6a8161269f565b82525050565b6000604082019050612a856000830185612a52565b612a926020830184612a61565b9392505050565b600080600060608486031215612ab257612ab16124f2565b5b6000612ac08682870161251d565b9350506020612ad18682870161259c565b9250506040612ae2868287016126c0565b9150509250925092565b60008060008060808587031215612b0657612b056124f2565b5b6000612b148782880161251d565b9450506020612b258782880161251d565b9350506040612b368782880161259c565b9250506060612b4787828801612627565b91505092959194509250565b600082825260208201905092915050565b7f476174657761793a207a65726f20616464726573730000000000000000000000600082015250565b6000612b9a601583612b53565b9150612ba582612b64565b602082019050919050565b60006020820190508181036000830152612bc981612b8d565b9050919050565b7f476174657761793a207472656173757279206164647265737320616c7265616460008201527f7920736574000000000000000000000000000000000000000000000000000000602082015250565b6000612c2c602583612b53565b9150612c3782612bd0565b604082019050919050565b60006020820190508181036000830152612c5b81612c1f565b9050919050565b7f476174657761793a2061676772656761746f72206164647265737320616c726560008201527f6164792073657400000000000000000000000000000000000000000000000000602082015250565b6000612cbe602783612b53565b9150612cc982612c62565b604082019050919050565b60006020820190508181036000830152612ced81612cb1565b9050919050565b6000602082019050612d096000830184612a52565b92915050565b7f4f6e6c7941676772656761746f72000000000000000000000000000000000000600082015250565b6000612d45600e83612b53565b9150612d5082612d0f565b602082019050919050565b60006020820190508181036000830152612d7481612d38565b9050919050565b7f4f7264657246756c66696c6c6564000000000000000000000000000000000000600082015250565b6000612db1600e83612b53565b9150612dbc82612d7b565b602082019050919050565b60006020820190508181036000830152612de081612da4565b9050919050565b7f4f72646572526566756e64656400000000000000000000000000000000000000600082015250565b6000612e1d600d83612b53565b9150612e2882612de7565b602082019050919050565b60006020820190508181036000830152612e4c81612e10565b9050919050565b7f4665654578636565647350726f746f636f6c4665650000000000000000000000600082015250565b6000612e89601583612b53565b9150612e9482612e53565b602082019050919050565b60006020820190508181036000830152612eb881612e7c565b9050919050565b6000604082019050612ed46000830185612a28565b612ee16020830184612a61565b9392505050565b612ef181612669565b8114612efc57600080fd5b50565b600081519050612f0e81612ee8565b92915050565b600060208284031215612f2a57612f296124f2565b5b6000612f3884828501612eff565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000612f7b8261269f565b9150612f868361269f565b9250828201905080821115612f9e57612f9d612f41565b5b92915050565b6000612faf8261269f565b9150612fba8361269f565b9250828203905081811115612fd257612fd1612f41565b5b92915050565b6000602082019050612fed6000830184612a61565b92915050565b7f4f776e61626c6532537465703a2063616c6c6572206973206e6f74207468652060008201527f6e6577206f776e65720000000000000000000000000000000000000000000000602082015250565b600061304f602983612b53565b915061305a82612ff3565b604082019050919050565b6000602082019050818103600083015261307e81613042565b9050919050565b7f496e76616c69644d657373616765486173680000000000000000000000000000600082015250565b60006130bb601283612b53565b91506130c682613085565b602082019050919050565b600060208201905081810360008301526130ea816130ae565b9050919050565b60006060820190506131066000830186612a28565b6131136020830185612a28565b6131206040830184612a61565b949350505050565b60006131338261269f565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361316557613164612f41565b5b600182019050919050565b600061317b8261269f565b91506131868361269f565b92508282026131948161269f565b915082820484148315176131ab576131aa612f41565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b60006131ec8261269f565b91506131f78361269f565b925082613207576132066131b2565b5b828204905092915050565b6000819050919050565b600061323761323261322d8461279c565b613212565b61269f565b9050919050565b6132478161321c565b82525050565b82818337600083830152505050565b6000601f19601f8301169050919050565b60006132798385612b53565b935061328683858461324d565b61328f8361325c565b840190509392505050565b60006080820190506132af6000830188612a61565b6132bc60208301876129fe565b6132c9604083018661323e565b81810360608301526132dc81848661326d565b90509695505050505050565b7f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160008201527f647920696e697469616c697a6564000000000000000000000000000000000000602082015250565b6000613344602e83612b53565b915061334f826132e8565b604082019050919050565b6000602082019050818103600083015261337381613337565b9050919050565b6000819050919050565b600060ff82169050919050565b60006133ac6133a76133a28461337a565b613212565b613384565b9050919050565b6133bc81613391565b82525050565b60006020820190506133d760008301846133b3565b92915050565b7f476174657761793a20696e76616c696420737461747573000000000000000000600082015250565b6000613413601783612b53565b915061341e826133dd565b602082019050919050565b6000602082019050818103600083015261344281613406565b9050919050565b60006134548261279c565b915061345f8361279c565b925082820390506bffffffffffffffffffffffff81111561348357613482612f41565b5b92915050565b60006134a461349f61349a846125fc565b613212565b61279c565b9050919050565b6134b481613489565b82525050565b60006040820190506134cf60008301856129fe565b6134dc60208301846134ab565b9392505050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000613519602083612b53565b9150613524826134e3565b602082019050919050565b600060208201905081810360008301526135488161350c565b9050919050565b7f5061757361626c653a2070617573656400000000000000000000000000000000600082015250565b6000613585601083612b53565b91506135908261354f565b602082019050919050565b600060208201905081810360008301526135b481613578565b9050919050565b7f546f6b656e4e6f74537570706f72746564000000000000000000000000000000600082015250565b60006135f1601183612b53565b91506135fc826135bb565b602082019050919050565b60006020820190508181036000830152613620816135e4565b9050919050565b7f416d6f756e7449735a65726f0000000000000000000000000000000000000000600082015250565b600061365d600c83612b53565b915061366882613627565b602082019050919050565b6000602082019050818103600083015261368c81613650565b9050919050565b7f5468726f775a65726f4164647265737300000000000000000000000000000000600082015250565b60006136c9601083612b53565b91506136d482613693565b602082019050919050565b600060208201905081810360008301526136f8816136bc565b9050919050565b7f496e76616c696453656e646572466565526563697069656e7400000000000000600082015250565b6000613735601983612b53565b9150613740826136ff565b602082019050919050565b6000602082019050818103600083015261376481613728565b9050919050565b7f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960008201527f6e697469616c697a696e67000000000000000000000000000000000000000000602082015250565b60006137c7602b83612b53565b91506137d28261376b565b604082019050919050565b600060208201905081810360008301526137f6816137ba565b9050919050565b7f5061757361626c653a206e6f7420706175736564000000000000000000000000600082015250565b6000613833601483612b53565b915061383e826137fd565b602082019050919050565b6000602082019050818103600083015261386281613826565b905091905056fea26474726f6e58221220a0b5d1d23c5807c0b800878d8b512f00901dabc450a8ba5180118337893af2a464736f6c63430008120033", - "deployedBytecode": "0x608060405234801561001057600080fd5b50d3801561001d57600080fd5b50d2801561002a57600080fd5b50600436106101305760003560e01c8063809804f7116100bc578063b810c6361161008b578063b810c6361461029b578063cd992400146102ba578063e30c3978146102d6578063f22ee704146102f4578063f2fde38b1461032457610130565b8063809804f7146102395780638129fc1c146102695780638456cb59146102735780638da5cb5b1461027d57610130565b8063715018a611610103578063715018a61461019557806371eedb881461019f57806375151b63146101cf578063768c6ec0146101ff57806379ba50971461022f57610130565b80633f4ba83a1461013557806340ebc6771461013f57806347094e2e1461015b5780635c975abb14610177575b600080fd5b61013d610340565b005b610159600480360381019061015491906125bc565b610352565b005b6101756004803603810190610170919061263c565b61061a565b005b61017f610685565b60405161018c9190612684565b60405180910390f35b61019d61069c565b005b6101b960048036038101906101b491906126d5565b6106b0565b6040516101c69190612684565b60405180910390f35b6101e960048036038101906101e49190612715565b610b45565b6040516101f69190612684565b60405180910390f35b61021960048036038101906102149190612742565b610ba1565b604051610226919061288f565b60405180910390f35b610237610db9565b005b610253600480360381019061024e919061293c565b610e46565b6040516102609190612a0d565b60405180910390f35b6102716113b1565b005b61027b611501565b005b610285611513565b6040516102929190612a37565b60405180910390f35b6102a361153d565b6040516102b1929190612a70565b60405180910390f35b6102d460048036038101906102cf9190612a99565b611562565b005b6102de6116e7565b6040516102eb9190612a37565b60405180910390f35b61030e60048036038101906103099190612aec565b611711565b60405161031b9190612684565b60405180910390f35b61033e60048036038101906103399190612715565b611d5d565b005b610348611e0a565b610350611e88565b565b61035a611e0a565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036103c9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016103c090612bb0565b60405180910390fd5b60007f747265617375727900000000000000000000000000000000000000000000000083036104cc578173ffffffffffffffffffffffffffffffffffffffff16609860089054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1603610482576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161047990612c42565b60405180910390fd5b81609860086101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600190506105ca565b7f61676772656761746f720000000000000000000000000000000000000000000083036105c9578173ffffffffffffffffffffffffffffffffffffffff16609960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1603610583576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161057a90612cd4565b60405180910390fd5b81609960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600190505b5b8015610615578173ffffffffffffffffffffffffffffffffffffffff16837fbbc5b96e57cfecb3dbeeadf92e87f15e58e64fcd75cbe256dcc5d9ef2e51e8a460405160405180910390a35b505050565b610622611e0a565b80609860006101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055507f1ce29a697a4765bd17d91df93ba75b250b629ecf030553ff1f6ab59f15ae6c7b8160405161067a9190612cf4565b60405180910390a150565b600060cd60009054906101000a900460ff16905090565b6106a4611e0a565b6106ae6000611eeb565b565b6000609960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610742576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161073990612d5b565b60405180910390fd5b60ff600083815260200190815260200160002060050160009054906101000a900460ff16156107a6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161079d90612dc7565b60405180910390fd5b60ff600083815260200190815260200160002060050160019054906101000a900460ff161561080a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161080190612e33565b60405180910390fd5b8260ff6000848152602001908152602001600020600401541015610863576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161085a90612e9f565b60405180910390fd5b60ff600083815260200190815260200160002060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb609860089054906101000a900473ffffffffffffffffffffffffffffffffffffffff16856040518363ffffffff1660e01b81526004016108f6929190612ebf565b6020604051808303816000875af1158015610915573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109399190612f14565b50600160ff600084815260200190815260200160002060050160016101000a81548160ff021916908315150217905550600060ff600084815260200190815260200160002060060160006101000a8154816bffffffffffffffffffffffff02191690836bffffffffffffffffffffffff16021790555060008360ff60008581526020019081526020016000206004015460ff6000868152602001908152602001600020600701546109ea9190612f70565b6109f49190612fa4565b905060ff600084815260200190815260200160002060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb60ff600086815260200190815260200160002060050160029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1660ff60008781526020019081526020016000206003015484610aa19190612f70565b6040518363ffffffff1660e01b8152600401610abe929190612ebf565b6020604051808303816000875af1158015610add573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b019190612f14565b50827f0736fe428e1747ca8d387c2e6fa1a31a0cde62d3a167c40a46ade59a3cdc828e85604051610b329190612fd8565b60405180910390a2600191505092915050565b60006001609a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205403610b975760019050610b9c565b600090505b919050565b610ba9612435565b60ff6000838152602001908152602001600020604051806101400160405290816000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016001820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016002820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200160038201548152602001600482015481526020016005820160009054906101000a900460ff161515151581526020016005820160019054906101000a900460ff161515151581526020016005820160029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016006820160009054906101000a90046bffffffffffffffffffffffff166bffffffffffffffffffffffff166bffffffffffffffffffffffff1681526020016007820154815250509050919050565b6000610dc3611f1c565b90508073ffffffffffffffffffffffffffffffffffffffff16610de46116e7565b73ffffffffffffffffffffffffffffffffffffffff1614610e3a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e3190613065565b60405180910390fd5b610e4381611eeb565b50565b6000610e50611f24565b610e5d8989868989611f6e565b60008383905003610ea3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e9a906130d1565b60405180910390fd5b8873ffffffffffffffffffffffffffffffffffffffff166323b872dd3330888c610ecd9190612f70565b6040518463ffffffff1660e01b8152600401610eeb939291906130f1565b6020604051808303816000875af1158015610f0a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f2e9190612f14565b5061010060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000815480929190610f8090613128565b91905055503361010060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054604051602001610fd8929190612ebf565b6040516020818303038152906040528051906020012090506000609860009054906101000a900467ffffffffffffffff1667ffffffffffffffff166097546110209190612f70565b609860009054906101000a900467ffffffffffffffff1667ffffffffffffffff168a61104c9190613170565b61105691906131e1565b90506040518061014001604052803373ffffffffffffffffffffffffffffffffffffffff1681526020018b73ffffffffffffffffffffffffffffffffffffffff1681526020018873ffffffffffffffffffffffffffffffffffffffff1681526020018781526020018281526020016000151581526020016000151581526020018673ffffffffffffffffffffffffffffffffffffffff16815260200160975467ffffffffffffffff166bffffffffffffffffffffffff168152602001828b61111e9190612fa4565b81525060ff600084815260200190815260200160002060008201518160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060208201518160010160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060408201518160020160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550606082015181600301556080820151816004015560a08201518160050160006101000a81548160ff02191690831515021790555060c08201518160050160016101000a81548160ff02191690831515021790555060e08201518160050160026101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506101008201518160060160006101000a8154816bffffffffffffffffffffffff02191690836bffffffffffffffffffffffff160217905550610120820151816007015590505060ff6000838152602001908152602001600020600701548a73ffffffffffffffffffffffffffffffffffffffff1660ff600085815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f40ccd1ceb111a3c186ef9911e1b876dc1f789ed331b86097b3b8851055b6a13784868d8a8a60405161139c95949392919061329a565b60405180910390a45098975050505050505050565b60008060019054906101000a900460ff161590508080156113e25750600160008054906101000a900460ff1660ff16105b8061140f57506113f130612121565b15801561140e5750600160008054906101000a900460ff1660ff16145b5b61144e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114459061335a565b60405180910390fd5b60016000806101000a81548160ff021916908360ff160217905550801561148b576001600060016101000a81548160ff0219169083151502179055505b620186a060978190555061149d612144565b6114a561219d565b80156114fe5760008060016101000a81548160ff0219169083151502179055507f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249860016040516114f591906133c2565b60405180910390a15b50565b611509611e0a565b6115116121f6565b565b6000603360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600080609860009054906101000a900467ffffffffffffffff16609754915091509091565b61156a611e0a565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036115d9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115d090612bb0565b60405180910390fd5b60018114806115e85750600281145b611627576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161161e90613429565b60405180910390fd5b7f746f6b656e00000000000000000000000000000000000000000000000000000083036116e25780609a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff16837fcfa976492af7c14a916cc3a239f4c9c75bbd7f5f0e398beb41d892c7eeccae4c836040516116d99190612fd8565b60405180910390a35b505050565b6000606560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6000609960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146117a3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161179a90612d5b565b60405180910390fd5b60ff600085815260200190815260200160002060050160009054906101000a900460ff1615611807576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117fe90612dc7565b60405180910390fd5b60ff600085815260200190815260200160002060050160019054906101000a900460ff161561186b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161186290612e33565b60405180910390fd5b600060ff600086815260200190815260200160002060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508267ffffffffffffffff1660ff600087815260200190815260200160002060060160008282829054906101000a90046bffffffffffffffffffffffff166118ed9190613449565b92506101000a8154816bffffffffffffffffffffffff02191690836bffffffffffffffffffffffff160217905550600060ff600087815260200190815260200160002060060160009054906101000a90046bffffffffffffffffffffffff166bffffffffffffffffffffffff1603611c1557600160ff600087815260200190815260200160002060050160006101000a81548160ff021916908315150217905550600060ff60008781526020019081526020016000206003015414611b3e5760ff600086815260200190815260200160002060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb60ff600088815260200190815260200160002060020160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1660ff6000898152602001908152602001600020600301546040518363ffffffff1660e01b8152600401611a69929190612ebf565b6020604051808303816000875af1158015611a88573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611aac9190612f14565b5060ff60008681526020019081526020016000206003015460ff600087815260200190815260200160002060020160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f44f6938ca4a10313aabb76f874cced61e35710a734a126e4afb34461bf8c250160405160405180910390a35b600060ff60008781526020019081526020016000206004015414611c14578073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb609860089054906101000a900473ffffffffffffffffffffffffffffffffffffffff1660ff6000898152602001908152602001600020600401546040518363ffffffff1660e01b8152600401611bcf929190612ebf565b6020604051808303816000875af1158015611bee573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c129190612f14565b505b5b60006097548467ffffffffffffffff1660ff600089815260200190815260200160002060070154611c469190613170565b611c5091906131e1565b90508060ff60008881526020019081526020016000206007016000828254611c789190612fa4565b925050819055508173ffffffffffffffffffffffffffffffffffffffff1663a9059cbb86836040518363ffffffff1660e01b8152600401611cba929190612ebf565b6020604051808303816000875af1158015611cd9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611cfd9190612f14565b508473ffffffffffffffffffffffffffffffffffffffff16867f98ece21e01a01cbe1d1c0dad3b053c8fbd368f99be78be958fcf1d1d13fd249a8987604051611d479291906134ba565b60405180910390a3600192505050949350505050565b611d65611e0a565b80606560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16611dc5611513565b73ffffffffffffffffffffffffffffffffffffffff167f38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e2270060405160405180910390a350565b611e12611f1c565b73ffffffffffffffffffffffffffffffffffffffff16611e30611513565b73ffffffffffffffffffffffffffffffffffffffff1614611e86576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e7d9061352f565b60405180910390fd5b565b611e90612259565b600060cd60006101000a81548160ff0219169083151502179055507f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa611ed4611f1c565b604051611ee19190612a37565b60405180910390a1565b606560006101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055611f19816122a2565b50565b600033905090565b611f2c610685565b15611f6c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f639061359b565b60405180910390fd5b565b6001609a60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414611ff0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fe790613607565b60405180910390fd5b60008403612033576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161202a90613673565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036120a2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612099906136df565b60405180910390fd5b6000811461211a57600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603612119576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016121109061374b565b60405180910390fd5b5b5050505050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b600060019054906101000a900460ff16612193576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161218a906137dd565b60405180910390fd5b61219b612368565b565b600060019054906101000a900460ff166121ec576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016121e3906137dd565b60405180910390fd5b6121f46123c9565b565b6121fe611f24565b600160cd60006101000a81548160ff0219169083151502179055507f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258612242611f1c565b60405161224f9190612a37565b60405180910390a1565b612261610685565b6122a0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161229790613849565b60405180910390fd5b565b6000603360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081603360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600060019054906101000a900460ff166123b7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016123ae906137dd565b60405180910390fd5b6123c76123c2611f1c565b611eeb565b565b600060019054906101000a900460ff16612418576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161240f906137dd565b60405180910390fd5b600060cd60006101000a81548160ff021916908315150217905550565b604051806101400160405280600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff1681526020016000815260200160008152602001600015158152602001600015158152602001600073ffffffffffffffffffffffffffffffffffffffff16815260200160006bffffffffffffffffffffffff168152602001600081525090565b600080fd5b600080fd5b6000819050919050565b61250f816124fc565b811461251a57600080fd5b50565b60008135905061252c81612506565b92915050565b600074ffffffffffffffffffffffffffffffffffffffffff82169050919050565b61255c81612532565b811461256757600080fd5b50565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006125958261256a565b9050919050565b6000813590506125ab81612553565b6125b48161258a565b905092915050565b600080604083850312156125d3576125d26124f2565b5b60006125e18582860161251d565b92505060206125f28582860161259c565b9150509250929050565b600067ffffffffffffffff82169050919050565b612619816125fc565b811461262457600080fd5b50565b60008135905061263681612610565b92915050565b600060208284031215612652576126516124f2565b5b600061266084828501612627565b91505092915050565b60008115159050919050565b61267e81612669565b82525050565b60006020820190506126996000830184612675565b92915050565b6000819050919050565b6126b28161269f565b81146126bd57600080fd5b50565b6000813590506126cf816126a9565b92915050565b600080604083850312156126ec576126eb6124f2565b5b60006126fa858286016126c0565b925050602061270b8582860161251d565b9150509250929050565b60006020828403121561272b5761272a6124f2565b5b60006127398482850161259c565b91505092915050565b600060208284031215612758576127576124f2565b5b60006127668482850161251d565b91505092915050565b6127788161258a565b82525050565b6127878161269f565b82525050565b61279681612669565b82525050565b60006bffffffffffffffffffffffff82169050919050565b6127bd8161279c565b82525050565b610140820160008201516127da600085018261276f565b5060208201516127ed602085018261276f565b506040820151612800604085018261276f565b506060820151612813606085018261277e565b506080820151612826608085018261277e565b5060a082015161283960a085018261278d565b5060c082015161284c60c085018261278d565b5060e082015161285f60e085018261276f565b506101008201516128746101008501826127b4565b5061012082015161288961012085018261277e565b50505050565b6000610140820190506128a560008301846127c3565b92915050565b6128b48161279c565b81146128bf57600080fd5b50565b6000813590506128d1816128ab565b92915050565b600080fd5b600080fd5b600080fd5b60008083601f8401126128fc576128fb6128d7565b5b8235905067ffffffffffffffff811115612919576129186128dc565b5b602083019150836001820283011115612935576129346128e1565b5b9250929050565b60008060008060008060008060e0898b03121561295c5761295b6124f2565b5b600061296a8b828c0161259c565b985050602061297b8b828c016126c0565b975050604061298c8b828c016128c2565b965050606061299d8b828c0161259c565b95505060806129ae8b828c016126c0565b94505060a06129bf8b828c0161259c565b93505060c089013567ffffffffffffffff8111156129e0576129df6124f7565b5b6129ec8b828c016128e6565b92509250509295985092959890939650565b612a07816124fc565b82525050565b6000602082019050612a2260008301846129fe565b92915050565b612a318161258a565b82525050565b6000602082019050612a4c6000830184612a28565b92915050565b612a5b816125fc565b82525050565b612a6a8161269f565b82525050565b6000604082019050612a856000830185612a52565b612a926020830184612a61565b9392505050565b600080600060608486031215612ab257612ab16124f2565b5b6000612ac08682870161251d565b9350506020612ad18682870161259c565b9250506040612ae2868287016126c0565b9150509250925092565b60008060008060808587031215612b0657612b056124f2565b5b6000612b148782880161251d565b9450506020612b258782880161251d565b9350506040612b368782880161259c565b9250506060612b4787828801612627565b91505092959194509250565b600082825260208201905092915050565b7f476174657761793a207a65726f20616464726573730000000000000000000000600082015250565b6000612b9a601583612b53565b9150612ba582612b64565b602082019050919050565b60006020820190508181036000830152612bc981612b8d565b9050919050565b7f476174657761793a207472656173757279206164647265737320616c7265616460008201527f7920736574000000000000000000000000000000000000000000000000000000602082015250565b6000612c2c602583612b53565b9150612c3782612bd0565b604082019050919050565b60006020820190508181036000830152612c5b81612c1f565b9050919050565b7f476174657761793a2061676772656761746f72206164647265737320616c726560008201527f6164792073657400000000000000000000000000000000000000000000000000602082015250565b6000612cbe602783612b53565b9150612cc982612c62565b604082019050919050565b60006020820190508181036000830152612ced81612cb1565b9050919050565b6000602082019050612d096000830184612a52565b92915050565b7f4f6e6c7941676772656761746f72000000000000000000000000000000000000600082015250565b6000612d45600e83612b53565b9150612d5082612d0f565b602082019050919050565b60006020820190508181036000830152612d7481612d38565b9050919050565b7f4f7264657246756c66696c6c6564000000000000000000000000000000000000600082015250565b6000612db1600e83612b53565b9150612dbc82612d7b565b602082019050919050565b60006020820190508181036000830152612de081612da4565b9050919050565b7f4f72646572526566756e64656400000000000000000000000000000000000000600082015250565b6000612e1d600d83612b53565b9150612e2882612de7565b602082019050919050565b60006020820190508181036000830152612e4c81612e10565b9050919050565b7f4665654578636565647350726f746f636f6c4665650000000000000000000000600082015250565b6000612e89601583612b53565b9150612e9482612e53565b602082019050919050565b60006020820190508181036000830152612eb881612e7c565b9050919050565b6000604082019050612ed46000830185612a28565b612ee16020830184612a61565b9392505050565b612ef181612669565b8114612efc57600080fd5b50565b600081519050612f0e81612ee8565b92915050565b600060208284031215612f2a57612f296124f2565b5b6000612f3884828501612eff565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000612f7b8261269f565b9150612f868361269f565b9250828201905080821115612f9e57612f9d612f41565b5b92915050565b6000612faf8261269f565b9150612fba8361269f565b9250828203905081811115612fd257612fd1612f41565b5b92915050565b6000602082019050612fed6000830184612a61565b92915050565b7f4f776e61626c6532537465703a2063616c6c6572206973206e6f74207468652060008201527f6e6577206f776e65720000000000000000000000000000000000000000000000602082015250565b600061304f602983612b53565b915061305a82612ff3565b604082019050919050565b6000602082019050818103600083015261307e81613042565b9050919050565b7f496e76616c69644d657373616765486173680000000000000000000000000000600082015250565b60006130bb601283612b53565b91506130c682613085565b602082019050919050565b600060208201905081810360008301526130ea816130ae565b9050919050565b60006060820190506131066000830186612a28565b6131136020830185612a28565b6131206040830184612a61565b949350505050565b60006131338261269f565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361316557613164612f41565b5b600182019050919050565b600061317b8261269f565b91506131868361269f565b92508282026131948161269f565b915082820484148315176131ab576131aa612f41565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b60006131ec8261269f565b91506131f78361269f565b925082613207576132066131b2565b5b828204905092915050565b6000819050919050565b600061323761323261322d8461279c565b613212565b61269f565b9050919050565b6132478161321c565b82525050565b82818337600083830152505050565b6000601f19601f8301169050919050565b60006132798385612b53565b935061328683858461324d565b61328f8361325c565b840190509392505050565b60006080820190506132af6000830188612a61565b6132bc60208301876129fe565b6132c9604083018661323e565b81810360608301526132dc81848661326d565b90509695505050505050565b7f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160008201527f647920696e697469616c697a6564000000000000000000000000000000000000602082015250565b6000613344602e83612b53565b915061334f826132e8565b604082019050919050565b6000602082019050818103600083015261337381613337565b9050919050565b6000819050919050565b600060ff82169050919050565b60006133ac6133a76133a28461337a565b613212565b613384565b9050919050565b6133bc81613391565b82525050565b60006020820190506133d760008301846133b3565b92915050565b7f476174657761793a20696e76616c696420737461747573000000000000000000600082015250565b6000613413601783612b53565b915061341e826133dd565b602082019050919050565b6000602082019050818103600083015261344281613406565b9050919050565b60006134548261279c565b915061345f8361279c565b925082820390506bffffffffffffffffffffffff81111561348357613482612f41565b5b92915050565b60006134a461349f61349a846125fc565b613212565b61279c565b9050919050565b6134b481613489565b82525050565b60006040820190506134cf60008301856129fe565b6134dc60208301846134ab565b9392505050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000613519602083612b53565b9150613524826134e3565b602082019050919050565b600060208201905081810360008301526135488161350c565b9050919050565b7f5061757361626c653a2070617573656400000000000000000000000000000000600082015250565b6000613585601083612b53565b91506135908261354f565b602082019050919050565b600060208201905081810360008301526135b481613578565b9050919050565b7f546f6b656e4e6f74537570706f72746564000000000000000000000000000000600082015250565b60006135f1601183612b53565b91506135fc826135bb565b602082019050919050565b60006020820190508181036000830152613620816135e4565b9050919050565b7f416d6f756e7449735a65726f0000000000000000000000000000000000000000600082015250565b600061365d600c83612b53565b915061366882613627565b602082019050919050565b6000602082019050818103600083015261368c81613650565b9050919050565b7f5468726f775a65726f4164647265737300000000000000000000000000000000600082015250565b60006136c9601083612b53565b91506136d482613693565b602082019050919050565b600060208201905081810360008301526136f8816136bc565b9050919050565b7f496e76616c696453656e646572466565526563697069656e7400000000000000600082015250565b6000613735601983612b53565b9150613740826136ff565b602082019050919050565b6000602082019050818103600083015261376481613728565b9050919050565b7f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960008201527f6e697469616c697a696e67000000000000000000000000000000000000000000602082015250565b60006137c7602b83612b53565b91506137d28261376b565b604082019050919050565b600060208201905081810360008301526137f6816137ba565b9050919050565b7f5061757361626c653a206e6f7420706175736564000000000000000000000000600082015250565b6000613833601483612b53565b915061383e826137fd565b602082019050919050565b6000602082019050818103600083015261386281613826565b905091905056fea26474726f6e58221220a0b5d1d23c5807c0b800878d8b512f00901dabc450a8ba5180118337893af2a464736f6c63430008120033", - "sourceMap": "390:6893:0:-:0;;;708:44;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;726:22;:20;;;:22;;:::i;:::-;390:6893;;5939:280:6;6007:13;;;;;;;;;;;6006:14;5998:66;;;;;;;;;;;;:::i;:::-;;;;;;;;;6094:15;6078:31;;:12;;;;;;;;;;:31;;;6074:139;;6140:15;6125:12;;:30;;;;;;;;;;;;;;;;;;6174:28;6186:15;6174:28;;;;;;:::i;:::-;;;;;;;;6074:139;5939:280::o;7:169:14:-;91:11;125:6;120:3;113:19;165:4;160:3;156:14;141:29;;7:169;;;;:::o;182:226::-;322:34;318:1;310:6;306:14;299:58;391:9;386:2;378:6;374:15;367:34;182:226;:::o;414:366::-;556:3;577:67;641:2;636:3;577:67;:::i;:::-;570:74;;653:93;742:3;653:93;:::i;:::-;771:2;766:3;762:12;755:19;;414:366;;;:::o;786:419::-;952:4;990:2;979:9;975:18;967:26;;1039:9;1033:4;1029:20;1025:1;1014:9;1010:17;1003:47;1067:131;1193:4;1067:131;:::i;:::-;1059:139;;786:419;;;:::o;1211:86::-;1246:7;1286:4;1279:5;1275:16;1264:27;;1211:86;;;:::o;1303:112::-;1386:22;1402:5;1386:22;:::i;:::-;1381:3;1374:35;1303:112;;:::o;1421:214::-;1510:4;1548:2;1537:9;1533:18;1525:26;;1561:67;1625:1;1614:9;1610:17;1601:6;1561:67;:::i;:::-;1421:214;;;;:::o;390:6893:0:-;;;;;;;", - "deployedSourceMap": "390:6893:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1421:56;;;:::i;:::-;;2293:551:1;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1894:170;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1879:84:7;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2085:101:5;;;:::i;:::-;;5669:926:0;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6984:142;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6828:107;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2031:212:4;;;:::i;:::-;;1709:1369:0;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;795:114;;;:::i;:::-;;1325:52;;;:::i;:::-;;1462:85:5;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7172:109:0;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;1426:335:1;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1144:99:4;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4135:1495:0;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1436:178:4;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1421:56:0;1355:13:5;:11;:13::i;:::-;1463:10:0::1;:8;:10::i;:::-;1421:56::o:0;2293:551:1:-;1355:13:5;:11;:13::i;:::-;2401:1:1::1;2384:19;;:5;:19;;::::0;2376:53:::1;;;;;;;;;;;;:::i;:::-;;;;;;;;;2433:12;2453:18;:4;:18:::0;2449:326:::1;;2505:5;2486:24;;:15;;;;;;;;;;;:24;;::::0;2478:74:::1;;;;;;;;;;;;:::i;:::-;;;;;;;;;2575:5;2557:15;;:23;;;;;;;;;;;;;;;;;;2595:4;2585:14;;2449:326;;;2614:20;:4;:20:::0;2610:165:::1;;2671:5;2649:27;;:18;;;;;;;;;;;:27;;::::0;2641:79:::1;;;;;;;;;;;;:::i;:::-;;;;;;;;;2746:5;2725:18;;:26;;;;;;;;;;;;;;;;;;2766:4;2756:14;;2610:165;2449:326;2782:7;2778:63;;;2830:5;2801:35;;2824:4;2801:35;;;;;;;;;;2778:63;2372:472;2293:551:::0;;:::o;1894:170::-;1355:13:5;:11;:13::i;:::-;1993:19:1::1;1972:18;;:40;;;;;;;;;;;;;;;;;;2021:39;2040:19;2021:39;;;;;;:::i;:::-;;;;;;;;1894:170:::0;:::o;1879:84:7:-;1926:4;1949:7;;;;;;;;;;;1942:14;;1879:84;:::o;2085:101:5:-;1355:13;:11;:13::i;:::-;2149:30:::1;2176:1;2149:18;:30::i;:::-;2085:101::o:0;5669:926:0:-;5750:4;1044:18;;;;;;;;;;;1030:32;;:10;:32;;;1022:59;;;;;;;;;;;;:::i;:::-;;;;;;;;;5820:5:::1;:15;5826:8;5820:15;;;;;;;;;;;:27;;;;;;;;;;;;5819:28;5811:55;;;;;;;;;;;;:::i;:::-;;;;;;;;;5879:5;:15;5885:8;5879:15;;;;;;;;;;;:26;;;;;;;;;;;;5878:27;5870:53;;;;;;;;;;;;:::i;:::-;;;;;;;;;5966:4;5935:5;:15;5941:8;5935:15;;;;;;;;;;;:27;;;:35;;5927:69;;;;;;;;;;;;:::i;:::-;;;;;;;;;6049:5;:15;6055:8;6049:15;;;;;;;;;;;:21;;;;;;;;;;;;6042:38;;;6081:15;;;;;;;;;;;6098:4;6042:61;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;6161:4;6132:5;:15;6138:8;6132:15;;;;;;;;;;;:26;;;:33;;;;;;;;;;;;;;;;;;6198:1;6169:5;:15;6175:8;6169:15;;;;;;;;;;;:26;;;:30;;;;;;;;;;;;;;;;;;6238:20;6316:4;6286:5;:15;6292:8;6286:15;;;;;;;;;;;:27;;;6261:5;:15;6267:8;6261:15;;;;;;;;;;;:22;;;:52;;;;:::i;:::-;:59;;;;:::i;:::-;6238:82;;6397:5;:15;6403:8;6397:15;;;;;;;;;;;:21;;;;;;;;;;;;6390:38;;;6433:5;:15;6439:8;6433:15;;;;;;;;;;;:29;;;;;;;;;;;;6482:5;:15;6488:8;6482:15;;;;;;;;;;;:25;;;6467:12;:40;;;;:::i;:::-;6390:121;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;6566:8;6546:29;6560:4;6546:29;;;;;;:::i;:::-;;;;;;;;6587:4;6580:11;;;5669:926:::0;;;;:::o;6984:142::-;7049:4;7092:1;7063:17;:25;7081:6;7063:25;;;;;;;;;;;;;;;;:30;7059:47;;7102:4;7095:11;;;;7059:47;7117:5;7110:12;;6984:142;;;;:::o;6828:107::-;6891:12;;:::i;:::-;6916:5;:15;6922:8;6916:15;;;;;;;;;;;6909:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6828:107;;;:::o;2031:212:4:-;2083:14;2100:12;:10;:12::i;:::-;2083:29;;2148:6;2130:24;;:14;:12;:14::i;:::-;:24;;;2122:78;;;;;;;;;;;;:::i;:::-;;;;;;;;;2210:26;2229:6;2210:18;:26::i;:::-;2073:170;2031:212::o;1709:1369:0:-;1928:15;1503:19:7;:17;:19::i;:::-;1979:74:0::1;1988:6;1996:7;2005:14;2021:19;2042:10;1979:8;:74::i;:::-;2121:1;2098:11;;2092:25;;:30:::0;2084:61:::1;;;;;;;;;;;;:::i;:::-;;;;;;;;;2205:6;2198:27;;;2226:10;2246:4;2263:10;2253:7;:20;;;;:::i;:::-;2198:76;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;2329:6;:18;2336:10;2329:18;;;;;;;;;;;;;;;;:20;;;;;;;;;:::i;:::-;;;;;;2434:10;2446:6;:18;2453:10;2446:18;;;;;;;;;;;;;;;;2423:42;;;;;;;;;:::i;:::-;;;;;;;;;;;;;2413:53;;;;;;2403:63;;2495:20;2562:18;;;;;;;;;;;2552:28;;:7;;:28;;;;:::i;:::-;2529:18;;;;;;;;;;;2519:28;;:7;:28;;;;:::i;:::-;2518:63;;;;:::i;:::-;2495:86;;2602:298;;;;;;;;2621:10;2602:298;;;;;;2643:6;2602:298;;;;;;2674:19;2602:298;;;;;;2709:10;2602:298;;;;2737:12;2602:298;;;;2767:5;2602:298;;;;;;2789:5;2602:298;;;;;;2814:14;2602:298;;;;;;2852:7;;2602:298;;;;;;;;2883:12;2873:7;:22;;;;:::i;:::-;2602:298;;::::0;2585:5:::1;:14;2591:7;2585:14;;;;;;;;;;;:315;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2994:5;:14;3000:7;2994:14;;;;;;;;;;;:21;;;2983:6;2940:134;;2957:5;:14;2963:7;2957:14;;;;;;;;;;;:21;;;;;;;;;;;;2940:134;;;3020:12;3037:7;3049:5;3059:11;;2940:134;;;;;;;;;;:::i;:::-;;;;;;;;1945:1133;1709:1369:::0;;;;;;;;;;:::o;795:114::-;3279:19:6;3302:13;;;;;;;;;;;3301:14;3279:36;;3347:14;:34;;;;;3380:1;3365:12;;;;;;;;;;:16;;;3347:34;3346:108;;;;3388:44;3426:4;3388:29;:44::i;:::-;3387:45;:66;;;;;3452:1;3436:12;;;;;;;;;;:17;;;3387:66;3346:108;3325:201;;;;;;;;;;;;:::i;:::-;;;;;;;;;3551:1;3536:12;;:16;;;;;;;;;;;;;;;;;;3566:14;3562:65;;;3612:4;3596:13;;:20;;;;;;;;;;;;;;;;;;3562:65;852:7:0::1;842;:17;;;;863:21;:19;:21::i;:::-;888:17;:15;:17::i;:::-;3651:14:6::0;3647:99;;;3697:5;3681:13;;:21;;;;;;;;;;;;;;;;;;3721:14;3733:1;3721:14;;;;;;:::i;:::-;;;;;;;;3647:99;3269:483;795:114:0:o;1325:52::-;1355:13:5;:11;:13::i;:::-;1365:8:0::1;:6;:8::i;:::-;1325:52::o:0;1462:85:5:-;1508:7;1534:6;;;;;;;;;;;1527:13;;1462:85;:::o;7172:109:0:-;7220:6;7228:7;7249:18;;;;;;;;;;;7269:7;;7241:36;;;;7172:109;;:::o;1426:335:1:-;1355:13:5;:11;:13::i;:::-;1547:1:1::1;1530:19;;:5;:19;;::::0;1522:53:::1;;;;;;;;;;;;:::i;:::-;;;;;;;;;1597:1;1587:6;:11;:26;;;;1612:1;1602:6;:11;1587:26;1579:62;;;;;;;;;;;;:::i;:::-;;;;;;;;;1649:15;:4;:15:::0;1645:113:::1;;1698:6;1671:17;:24;1689:5;1671:24;;;;;;;;;;;;;;;:33;;;;1739:5;1714:39;;1733:4;1714:39;1746:6;1714:39;;;;;;:::i;:::-;;;;;;;;1645:113;1426:335:::0;;;:::o;1144:99:4:-;1197:7;1223:13;;;;;;;;;;;1216:20;;1144:99;:::o;4135:1495:0:-;4287:4;1044:18;;;;;;;;;;;1030:32;;:10;:32;;;1022:59;;;;;;;;;;;;:::i;:::-;;;;;;;;;4357:5:::1;:15;4363:8;4357:15;;;;;;;;;;;:27;;;;;;;;;;;;4356:28;4348:55;;;;;;;;;;;;:::i;:::-;;;;;;;;;4416:5;:15;4422:8;4416:15;;;;;;;;;;;:26;;;;;;;;;;;;4415:27;4407:53;;;;;;;;;;;;:::i;:::-;;;;;;;;;4497:13;4513:5;:15;4519:8;4513:15;;;;;;;;;;;:21;;;;;;;;;;;;4497:37;;4631:14;4601:44;;:5;:15;4607:8;4601:15;;;;;;;;;;;:26;;;:44;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;4684:1;4654:5;:15;4660:8;4654:15;;;;;;;;;;;:26;;;;;;;;;;;;:31;;::::0;4650:604:::1;;4767:4;4737:5;:15;4743:8;4737:15;;;;;;;;;;;:27;;;:34;;;;;;;;;;;;;;;;;;4810:1;4781:5;:15;4787:8;4781:15;;;;;;;;;;;:25;;;:30;4777:321;;4853:5;:15;4859:8;4853:15;;;;;;;;;;;:21;;;;;;;;;;;;4846:38;;;4891:5;:15;4897:8;4891:15;;;;;;;;;;;:34;;;;;;;;;;;;4932:5;:15;4938:8;4932:15;;;;;;;;;;;:25;;;4846:117;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;5061:5;:15;5067:8;5061:15;;;;;;;;;;;:25;;;5020:5;:15;5026:8;5020:15;;;;;;;;;;;:34;;;;;;;;;;;;4993:99;;;;;;;;;;;;4777:321;5138:1;5107:5;:15;5113:8;5107:15;;;;;;;;;;;:27;;;:32;5103:147;;5183:5;5176:22;;;5199:15;;;;;;;;;;;5216:5;:15;5222:8;5216:15;;;;;;;;;;;:27;;;5176:68;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;5103:147;4650:604;5294:31;5372:7;;5354:14;5329:39;;:5;:15;5335:8;5329:15;;;;;;;;;;;:22;;;:39;;;;:::i;:::-;5328:51;;;;:::i;:::-;5294:85;;5409:23;5383:5;:15;5389:8;5383:15;;;;;;;;;;;:22;;;:49;;;;;;;:::i;:::-;;;;;;;;5443:5;5436:22;;;5459:18;5479:23;5436:67;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;5575:18;5537:73;;5565:8;5537:73;5550:13;5595:14;5537:73;;;;;;;:::i;:::-;;;;;;;;5622:4;5615:11;;;;4135:1495:::0;;;;;;:::o;1436:178:4:-;1355:13:5;:11;:13::i;:::-;1541:8:4::1;1525:13;;:24;;;;;;;;;;;;;;;;;;1598:8;1564:43;;1589:7;:5;:7::i;:::-;1564:43;;;;;;;;;;;;1436:178:::0;:::o;1620:130:5:-;1694:12;:10;:12::i;:::-;1683:23;;:7;:5;:7::i;:::-;:23;;;1675:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;1620:130::o;2697:117:7:-;1750:16;:14;:16::i;:::-;2765:5:::1;2755:7;;:15;;;;;;;;;;;;;;;;;;2785:22;2794:12;:10;:12::i;:::-;2785:22;;;;;;:::i;:::-;;;;;;;;2697:117::o:0;1798:153:4:-;1887:13;;1880:20;;;;;;;;;;;1910:34;1935:8;1910:24;:34::i;:::-;1798:153;:::o;886:96:9:-;939:7;965:10;958:17;;886:96;:::o;2031:106:7:-;2101:8;:6;:8::i;:::-;2100:9;2092:38;;;;;;;;;;;;:::i;:::-;;;;;;;;;2031:106::o;3471:427:0:-;3663:1;3634:17;:25;3652:6;3634:25;;;;;;;;;;;;;;;;:30;3626:60;;;;;;;;;;;;:::i;:::-;;;;;;;;;3709:1;3698:7;:12;3690:37;;;;;;;;;;;;:::i;:::-;;;;;;;;;3765:1;3739:28;;:14;:28;;;3731:57;;;;;;;;;;;;:::i;:::-;;;;;;;;;3811:1;3797:10;:15;3793:102;;3858:1;3827:33;;:19;:33;;;3819:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;3793:102;3471:427;;;;;:::o;1423:320:8:-;1483:4;1735:1;1713:7;:19;;;:23;1706:30;;1423:320;;;:::o;889:100:4:-;5374:13:6;;;;;;;;;;;5366:69;;;;;;;;;;;;:::i;:::-;;;;;;;;;956:26:4::1;:24;:26::i;:::-;889:100::o:0;1084:97:7:-;5374:13:6;;;;;;;;;;;5366:69;;;;;;;;;;;;:::i;:::-;;;;;;;;;1147:27:7::1;:25;:27::i;:::-;1084:97::o:0;2450:115::-;1503:19;:17;:19::i;:::-;2519:4:::1;2509:7;;:14;;;;;;;;;;;;;;;;;;2538:20;2545:12;:10;:12::i;:::-;2538:20;;;;;;:::i;:::-;;;;;;;;2450:115::o:0;2209:106::-;2275:8;:6;:8::i;:::-;2267:41;;;;;;;;;;;;:::i;:::-;;;;;;;;;2209:106::o;2687:187:5:-;2760:16;2779:6;;;;;;;;;;;2760:25;;2804:8;2795:6;;:17;;;;;;;;;;;;;;;;;;2858:8;2827:40;;2848:8;2827:40;;;;;;;;;;;;2750:124;2687:187;:::o;1125:111::-;5374:13:6;;;;;;;;;;;5366:69;;;;;;;;;;;;:::i;:::-;;;;;;;;;1197:32:5::1;1216:12;:10;:12::i;:::-;1197:18;:32::i;:::-;1125:111::o:0;1187:95:7:-;5374:13:6;;;;;;;;;;;5366:69;;;;;;;;;;;;:::i;:::-;;;;;;;;;1270:5:7::1;1260:7;;:15;;;;;;;;;;;;;;;;;;1187:95::o:0;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;88:117:14:-;197:1;194;187:12;211:117;320:1;317;310:12;334:77;371:7;400:5;389:16;;334:77;;;:::o;417:122::-;490:24;508:5;490:24;:::i;:::-;483:5;480:35;470:63;;529:1;526;519:12;470:63;417:122;:::o;545:139::-;591:5;629:6;616:20;607:29;;645:33;672:5;645:33;:::i;:::-;545:139;;;;:::o;690:128::-;727:7;767:44;760:5;756:56;745:67;;690:128;;;:::o;824:122::-;897:24;915:5;897:24;:::i;:::-;890:5;887:35;877:63;;936:1;933;926:12;877:63;824:122;:::o;952:126::-;989:7;1029:42;1022:5;1018:54;1007:65;;952:126;;;:::o;1084:96::-;1121:7;1150:24;1168:5;1150:24;:::i;:::-;1139:35;;1084:96;;;:::o;1186:181::-;1232:5;1270:6;1257:20;1248:29;;1286:33;1313:5;1286:33;:::i;:::-;1337:24;1355:5;1337:24;:::i;:::-;1328:33;;1186:181;;;;:::o;1373:474::-;1441:6;1449;1498:2;1486:9;1477:7;1473:23;1469:32;1466:119;;;1504:79;;:::i;:::-;1466:119;1624:1;1649:53;1694:7;1685:6;1674:9;1670:22;1649:53;:::i;:::-;1639:63;;1595:117;1751:2;1777:53;1822:7;1813:6;1802:9;1798:22;1777:53;:::i;:::-;1767:63;;1722:118;1373:474;;;;;:::o;1853:101::-;1889:7;1929:18;1922:5;1918:30;1907:41;;1853:101;;;:::o;1960:120::-;2032:23;2049:5;2032:23;:::i;:::-;2025:5;2022:34;2012:62;;2070:1;2067;2060:12;2012:62;1960:120;:::o;2086:137::-;2131:5;2169:6;2156:20;2147:29;;2185:32;2211:5;2185:32;:::i;:::-;2086:137;;;;:::o;2229:327::-;2287:6;2336:2;2324:9;2315:7;2311:23;2307:32;2304:119;;;2342:79;;:::i;:::-;2304:119;2462:1;2487:52;2531:7;2522:6;2511:9;2507:22;2487:52;:::i;:::-;2477:62;;2433:116;2229:327;;;;:::o;2562:90::-;2596:7;2639:5;2632:13;2625:21;2614:32;;2562:90;;;:::o;2658:109::-;2739:21;2754:5;2739:21;:::i;:::-;2734:3;2727:34;2658:109;;:::o;2773:210::-;2860:4;2898:2;2887:9;2883:18;2875:26;;2911:65;2973:1;2962:9;2958:17;2949:6;2911:65;:::i;:::-;2773:210;;;;:::o;2989:77::-;3026:7;3055:5;3044:16;;2989:77;;;:::o;3072:122::-;3145:24;3163:5;3145:24;:::i;:::-;3138:5;3135:35;3125:63;;3184:1;3181;3174:12;3125:63;3072:122;:::o;3200:139::-;3246:5;3284:6;3271:20;3262:29;;3300:33;3327:5;3300:33;:::i;:::-;3200:139;;;;:::o;3345:474::-;3413:6;3421;3470:2;3458:9;3449:7;3445:23;3441:32;3438:119;;;3476:79;;:::i;:::-;3438:119;3596:1;3621:53;3666:7;3657:6;3646:9;3642:22;3621:53;:::i;:::-;3611:63;;3567:117;3723:2;3749:53;3794:7;3785:6;3774:9;3770:22;3749:53;:::i;:::-;3739:63;;3694:118;3345:474;;;;;:::o;3825:329::-;3884:6;3933:2;3921:9;3912:7;3908:23;3904:32;3901:119;;;3939:79;;:::i;:::-;3901:119;4059:1;4084:53;4129:7;4120:6;4109:9;4105:22;4084:53;:::i;:::-;4074:63;;4030:117;3825:329;;;;:::o;4160:::-;4219:6;4268:2;4256:9;4247:7;4243:23;4239:32;4236:119;;;4274:79;;:::i;:::-;4236:119;4394:1;4419:53;4464:7;4455:6;4444:9;4440:22;4419:53;:::i;:::-;4409:63;;4365:117;4160:329;;;;:::o;4495:108::-;4572:24;4590:5;4572:24;:::i;:::-;4567:3;4560:37;4495:108;;:::o;4609:::-;4686:24;4704:5;4686:24;:::i;:::-;4681:3;4674:37;4609:108;;:::o;4723:99::-;4794:21;4809:5;4794:21;:::i;:::-;4789:3;4782:34;4723:99;;:::o;4828:109::-;4864:7;4904:26;4897:5;4893:38;4882:49;;4828:109;;;:::o;4943:105::-;5018:23;5035:5;5018:23;:::i;:::-;5013:3;5006:36;4943:105;;:::o;5108:1948::-;5249:6;5244:3;5240:16;5340:4;5333:5;5329:16;5323:23;5359:63;5416:4;5411:3;5407:14;5393:12;5359:63;:::i;:::-;5266:166;5515:4;5508:5;5504:16;5498:23;5534:63;5591:4;5586:3;5582:14;5568:12;5534:63;:::i;:::-;5442:165;5703:4;5696:5;5692:16;5686:23;5722:63;5779:4;5774:3;5770:14;5756:12;5722:63;:::i;:::-;5617:178;5882:4;5875:5;5871:16;5865:23;5901:63;5958:4;5953:3;5949:14;5935:12;5901:63;:::i;:::-;5805:169;6063:4;6056:5;6052:16;6046:23;6082:63;6139:4;6134:3;6130:14;6116:12;6082:63;:::i;:::-;5984:171;6244:4;6237:5;6233:16;6227:23;6263:57;6314:4;6309:3;6305:14;6291:12;6263:57;:::i;:::-;6165:165;6418:4;6411:5;6407:16;6401:23;6437:57;6488:4;6483:3;6479:14;6465:12;6437:57;:::i;:::-;6340:164;6595:4;6588:5;6584:16;6578:23;6614:63;6671:4;6666:3;6662:14;6648:12;6614:63;:::i;:::-;6514:173;6775:6;6768:5;6764:18;6758:25;6796:63;6851:6;6846:3;6842:16;6828:12;6796:63;:::i;:::-;6697:172;6953:6;6946:5;6942:18;6936:25;6974:65;7031:6;7026:3;7022:16;7008:12;6974:65;:::i;:::-;6879:170;5218:1838;5108:1948;;:::o;7062:311::-;7199:4;7237:3;7226:9;7222:19;7214:27;;7251:115;7363:1;7352:9;7348:17;7339:6;7251:115;:::i;:::-;7062:311;;;;:::o;7379:120::-;7451:23;7468:5;7451:23;:::i;:::-;7444:5;7441:34;7431:62;;7489:1;7486;7479:12;7431:62;7379:120;:::o;7505:137::-;7550:5;7588:6;7575:20;7566:29;;7604:32;7630:5;7604:32;:::i;:::-;7505:137;;;;:::o;7648:117::-;7757:1;7754;7747:12;7771:117;7880:1;7877;7870:12;7894:117;8003:1;8000;7993:12;8031:553;8089:8;8099:6;8149:3;8142:4;8134:6;8130:17;8126:27;8116:122;;8157:79;;:::i;:::-;8116:122;8270:6;8257:20;8247:30;;8300:18;8292:6;8289:30;8286:117;;;8322:79;;:::i;:::-;8286:117;8436:4;8428:6;8424:17;8412:29;;8490:3;8482:4;8474:6;8470:17;8460:8;8456:32;8453:41;8450:128;;;8497:79;;:::i;:::-;8450:128;8031:553;;;;;:::o;8590:1401::-;8714:6;8722;8730;8738;8746;8754;8762;8770;8819:3;8807:9;8798:7;8794:23;8790:33;8787:120;;;8826:79;;:::i;:::-;8787:120;8946:1;8971:53;9016:7;9007:6;8996:9;8992:22;8971:53;:::i;:::-;8961:63;;8917:117;9073:2;9099:53;9144:7;9135:6;9124:9;9120:22;9099:53;:::i;:::-;9089:63;;9044:118;9201:2;9227:52;9271:7;9262:6;9251:9;9247:22;9227:52;:::i;:::-;9217:62;;9172:117;9328:2;9354:53;9399:7;9390:6;9379:9;9375:22;9354:53;:::i;:::-;9344:63;;9299:118;9456:3;9483:53;9528:7;9519:6;9508:9;9504:22;9483:53;:::i;:::-;9473:63;;9427:119;9585:3;9612:53;9657:7;9648:6;9637:9;9633:22;9612:53;:::i;:::-;9602:63;;9556:119;9742:3;9731:9;9727:19;9714:33;9774:18;9766:6;9763:30;9760:117;;;9796:79;;:::i;:::-;9760:117;9909:65;9966:7;9957:6;9946:9;9942:22;9909:65;:::i;:::-;9891:83;;;;9685:299;8590:1401;;;;;;;;;;;:::o;9997:118::-;10084:24;10102:5;10084:24;:::i;:::-;10079:3;10072:37;9997:118;;:::o;10121:222::-;10214:4;10252:2;10241:9;10237:18;10229:26;;10265:71;10333:1;10322:9;10318:17;10309:6;10265:71;:::i;:::-;10121:222;;;;:::o;10349:118::-;10436:24;10454:5;10436:24;:::i;:::-;10431:3;10424:37;10349:118;;:::o;10473:222::-;10566:4;10604:2;10593:9;10589:18;10581:26;;10617:71;10685:1;10674:9;10670:17;10661:6;10617:71;:::i;:::-;10473:222;;;;:::o;10701:115::-;10786:23;10803:5;10786:23;:::i;:::-;10781:3;10774:36;10701:115;;:::o;10822:118::-;10909:24;10927:5;10909:24;:::i;:::-;10904:3;10897:37;10822:118;;:::o;10946:328::-;11065:4;11103:2;11092:9;11088:18;11080:26;;11116:69;11182:1;11171:9;11167:17;11158:6;11116:69;:::i;:::-;11195:72;11263:2;11252:9;11248:18;11239:6;11195:72;:::i;:::-;10946:328;;;;;:::o;11280:619::-;11357:6;11365;11373;11422:2;11410:9;11401:7;11397:23;11393:32;11390:119;;;11428:79;;:::i;:::-;11390:119;11548:1;11573:53;11618:7;11609:6;11598:9;11594:22;11573:53;:::i;:::-;11563:63;;11519:117;11675:2;11701:53;11746:7;11737:6;11726:9;11722:22;11701:53;:::i;:::-;11691:63;;11646:118;11803:2;11829:53;11874:7;11865:6;11854:9;11850:22;11829:53;:::i;:::-;11819:63;;11774:118;11280:619;;;;;:::o;11905:763::-;11990:6;11998;12006;12014;12063:3;12051:9;12042:7;12038:23;12034:33;12031:120;;;12070:79;;:::i;:::-;12031:120;12190:1;12215:53;12260:7;12251:6;12240:9;12236:22;12215:53;:::i;:::-;12205:63;;12161:117;12317:2;12343:53;12388:7;12379:6;12368:9;12364:22;12343:53;:::i;:::-;12333:63;;12288:118;12445:2;12471:53;12516:7;12507:6;12496:9;12492:22;12471:53;:::i;:::-;12461:63;;12416:118;12573:2;12599:52;12643:7;12634:6;12623:9;12619:22;12599:52;:::i;:::-;12589:62;;12544:117;11905:763;;;;;;;:::o;12674:169::-;12758:11;12792:6;12787:3;12780:19;12832:4;12827:3;12823:14;12808:29;;12674:169;;;;:::o;12849:171::-;12989:23;12985:1;12977:6;12973:14;12966:47;12849:171;:::o;13026:366::-;13168:3;13189:67;13253:2;13248:3;13189:67;:::i;:::-;13182:74;;13265:93;13354:3;13265:93;:::i;:::-;13383:2;13378:3;13374:12;13367:19;;13026:366;;;:::o;13398:419::-;13564:4;13602:2;13591:9;13587:18;13579:26;;13651:9;13645:4;13641:20;13637:1;13626:9;13622:17;13615:47;13679:131;13805:4;13679:131;:::i;:::-;13671:139;;13398:419;;;:::o;13823:224::-;13963:34;13959:1;13951:6;13947:14;13940:58;14032:7;14027:2;14019:6;14015:15;14008:32;13823:224;:::o;14053:366::-;14195:3;14216:67;14280:2;14275:3;14216:67;:::i;:::-;14209:74;;14292:93;14381:3;14292:93;:::i;:::-;14410:2;14405:3;14401:12;14394:19;;14053:366;;;:::o;14425:419::-;14591:4;14629:2;14618:9;14614:18;14606:26;;14678:9;14672:4;14668:20;14664:1;14653:9;14649:17;14642:47;14706:131;14832:4;14706:131;:::i;:::-;14698:139;;14425:419;;;:::o;14850:226::-;14990:34;14986:1;14978:6;14974:14;14967:58;15059:9;15054:2;15046:6;15042:15;15035:34;14850:226;:::o;15082:366::-;15224:3;15245:67;15309:2;15304:3;15245:67;:::i;:::-;15238:74;;15321:93;15410:3;15321:93;:::i;:::-;15439:2;15434:3;15430:12;15423:19;;15082:366;;;:::o;15454:419::-;15620:4;15658:2;15647:9;15643:18;15635:26;;15707:9;15701:4;15697:20;15693:1;15682:9;15678:17;15671:47;15735:131;15861:4;15735:131;:::i;:::-;15727:139;;15454:419;;;:::o;15879:218::-;15970:4;16008:2;15997:9;15993:18;15985:26;;16021:69;16087:1;16076:9;16072:17;16063:6;16021:69;:::i;:::-;15879:218;;;;:::o;16103:164::-;16243:16;16239:1;16231:6;16227:14;16220:40;16103:164;:::o;16273:366::-;16415:3;16436:67;16500:2;16495:3;16436:67;:::i;:::-;16429:74;;16512:93;16601:3;16512:93;:::i;:::-;16630:2;16625:3;16621:12;16614:19;;16273:366;;;:::o;16645:419::-;16811:4;16849:2;16838:9;16834:18;16826:26;;16898:9;16892:4;16888:20;16884:1;16873:9;16869:17;16862:47;16926:131;17052:4;16926:131;:::i;:::-;16918:139;;16645:419;;;:::o;17070:164::-;17210:16;17206:1;17198:6;17194:14;17187:40;17070:164;:::o;17240:366::-;17382:3;17403:67;17467:2;17462:3;17403:67;:::i;:::-;17396:74;;17479:93;17568:3;17479:93;:::i;:::-;17597:2;17592:3;17588:12;17581:19;;17240:366;;;:::o;17612:419::-;17778:4;17816:2;17805:9;17801:18;17793:26;;17865:9;17859:4;17855:20;17851:1;17840:9;17836:17;17829:47;17893:131;18019:4;17893:131;:::i;:::-;17885:139;;17612:419;;;:::o;18037:163::-;18177:15;18173:1;18165:6;18161:14;18154:39;18037:163;:::o;18206:366::-;18348:3;18369:67;18433:2;18428:3;18369:67;:::i;:::-;18362:74;;18445:93;18534:3;18445:93;:::i;:::-;18563:2;18558:3;18554:12;18547:19;;18206:366;;;:::o;18578:419::-;18744:4;18782:2;18771:9;18767:18;18759:26;;18831:9;18825:4;18821:20;18817:1;18806:9;18802:17;18795:47;18859:131;18985:4;18859:131;:::i;:::-;18851:139;;18578:419;;;:::o;19003:171::-;19143:23;19139:1;19131:6;19127:14;19120:47;19003:171;:::o;19180:366::-;19322:3;19343:67;19407:2;19402:3;19343:67;:::i;:::-;19336:74;;19419:93;19508:3;19419:93;:::i;:::-;19537:2;19532:3;19528:12;19521:19;;19180:366;;;:::o;19552:419::-;19718:4;19756:2;19745:9;19741:18;19733:26;;19805:9;19799:4;19795:20;19791:1;19780:9;19776:17;19769:47;19833:131;19959:4;19833:131;:::i;:::-;19825:139;;19552:419;;;:::o;19977:332::-;20098:4;20136:2;20125:9;20121:18;20113:26;;20149:71;20217:1;20206:9;20202:17;20193:6;20149:71;:::i;:::-;20230:72;20298:2;20287:9;20283:18;20274:6;20230:72;:::i;:::-;19977:332;;;;;:::o;20315:116::-;20385:21;20400:5;20385:21;:::i;:::-;20378:5;20375:32;20365:60;;20421:1;20418;20411:12;20365:60;20315:116;:::o;20437:137::-;20491:5;20522:6;20516:13;20507:22;;20538:30;20562:5;20538:30;:::i;:::-;20437:137;;;;:::o;20580:345::-;20647:6;20696:2;20684:9;20675:7;20671:23;20667:32;20664:119;;;20702:79;;:::i;:::-;20664:119;20822:1;20847:61;20900:7;20891:6;20880:9;20876:22;20847:61;:::i;:::-;20837:71;;20793:125;20580:345;;;;:::o;20931:180::-;20979:77;20976:1;20969:88;21076:4;21073:1;21066:15;21100:4;21097:1;21090:15;21117:191;21157:3;21176:20;21194:1;21176:20;:::i;:::-;21171:25;;21210:20;21228:1;21210:20;:::i;:::-;21205:25;;21253:1;21250;21246:9;21239:16;;21274:3;21271:1;21268:10;21265:36;;;21281:18;;:::i;:::-;21265:36;21117:191;;;;:::o;21314:194::-;21354:4;21374:20;21392:1;21374:20;:::i;:::-;21369:25;;21408:20;21426:1;21408:20;:::i;:::-;21403:25;;21452:1;21449;21445:9;21437:17;;21476:1;21470:4;21467:11;21464:37;;;21481:18;;:::i;:::-;21464:37;21314:194;;;;:::o;21514:222::-;21607:4;21645:2;21634:9;21630:18;21622:26;;21658:71;21726:1;21715:9;21711:17;21702:6;21658:71;:::i;:::-;21514:222;;;;:::o;21742:228::-;21882:34;21878:1;21870:6;21866:14;21859:58;21951:11;21946:2;21938:6;21934:15;21927:36;21742:228;:::o;21976:366::-;22118:3;22139:67;22203:2;22198:3;22139:67;:::i;:::-;22132:74;;22215:93;22304:3;22215:93;:::i;:::-;22333:2;22328:3;22324:12;22317:19;;21976:366;;;:::o;22348:419::-;22514:4;22552:2;22541:9;22537:18;22529:26;;22601:9;22595:4;22591:20;22587:1;22576:9;22572:17;22565:47;22629:131;22755:4;22629:131;:::i;:::-;22621:139;;22348:419;;;:::o;22773:168::-;22913:20;22909:1;22901:6;22897:14;22890:44;22773:168;:::o;22947:366::-;23089:3;23110:67;23174:2;23169:3;23110:67;:::i;:::-;23103:74;;23186:93;23275:3;23186:93;:::i;:::-;23304:2;23299:3;23295:12;23288:19;;22947:366;;;:::o;23319:419::-;23485:4;23523:2;23512:9;23508:18;23500:26;;23572:9;23566:4;23562:20;23558:1;23547:9;23543:17;23536:47;23600:131;23726:4;23600:131;:::i;:::-;23592:139;;23319:419;;;:::o;23744:442::-;23893:4;23931:2;23920:9;23916:18;23908:26;;23944:71;24012:1;24001:9;23997:17;23988:6;23944:71;:::i;:::-;24025:72;24093:2;24082:9;24078:18;24069:6;24025:72;:::i;:::-;24107;24175:2;24164:9;24160:18;24151:6;24107:72;:::i;:::-;23744:442;;;;;;:::o;24192:233::-;24231:3;24254:24;24272:5;24254:24;:::i;:::-;24245:33;;24300:66;24293:5;24290:77;24287:103;;24370:18;;:::i;:::-;24287:103;24417:1;24410:5;24406:13;24399:20;;24192:233;;;:::o;24431:410::-;24471:7;24494:20;24512:1;24494:20;:::i;:::-;24489:25;;24528:20;24546:1;24528:20;:::i;:::-;24523:25;;24583:1;24580;24576:9;24605:30;24623:11;24605:30;:::i;:::-;24594:41;;24784:1;24775:7;24771:15;24768:1;24765:22;24745:1;24738:9;24718:83;24695:139;;24814:18;;:::i;:::-;24695:139;24479:362;24431:410;;;;:::o;24847:180::-;24895:77;24892:1;24885:88;24992:4;24989:1;24982:15;25016:4;25013:1;25006:15;25033:185;25073:1;25090:20;25108:1;25090:20;:::i;:::-;25085:25;;25124:20;25142:1;25124:20;:::i;:::-;25119:25;;25163:1;25153:35;;25168:18;;:::i;:::-;25153:35;25210:1;25207;25203:9;25198:14;;25033:185;;;;:::o;25224:60::-;25252:3;25273:5;25266:12;;25224:60;;;:::o;25290:140::-;25339:9;25372:52;25390:33;25399:23;25416:5;25399:23;:::i;:::-;25390:33;:::i;:::-;25372:52;:::i;:::-;25359:65;;25290:140;;;:::o;25436:129::-;25522:36;25552:5;25522:36;:::i;:::-;25517:3;25510:49;25436:129;;:::o;25571:146::-;25668:6;25663:3;25658;25645:30;25709:1;25700:6;25695:3;25691:16;25684:27;25571:146;;;:::o;25723:102::-;25764:6;25815:2;25811:7;25806:2;25799:5;25795:14;25791:28;25781:38;;25723:102;;;:::o;25855:317::-;25953:3;25974:71;26038:6;26033:3;25974:71;:::i;:::-;25967:78;;26055:56;26104:6;26099:3;26092:5;26055:56;:::i;:::-;26136:29;26158:6;26136:29;:::i;:::-;26131:3;26127:39;26120:46;;25855:317;;;;;:::o;26178:662::-;26384:4;26422:3;26411:9;26407:19;26399:27;;26436:71;26504:1;26493:9;26489:17;26480:6;26436:71;:::i;:::-;26517:72;26585:2;26574:9;26570:18;26561:6;26517:72;:::i;:::-;26599:71;26666:2;26655:9;26651:18;26642:6;26599:71;:::i;:::-;26717:9;26711:4;26707:20;26702:2;26691:9;26687:18;26680:48;26745:88;26828:4;26819:6;26811;26745:88;:::i;:::-;26737:96;;26178:662;;;;;;;;:::o;26846:233::-;26986:34;26982:1;26974:6;26970:14;26963:58;27055:16;27050:2;27042:6;27038:15;27031:41;26846:233;:::o;27085:366::-;27227:3;27248:67;27312:2;27307:3;27248:67;:::i;:::-;27241:74;;27324:93;27413:3;27324:93;:::i;:::-;27442:2;27437:3;27433:12;27426:19;;27085:366;;;:::o;27457:419::-;27623:4;27661:2;27650:9;27646:18;27638:26;;27710:9;27704:4;27700:20;27696:1;27685:9;27681:17;27674:47;27738:131;27864:4;27738:131;:::i;:::-;27730:139;;27457:419;;;:::o;27882:85::-;27927:7;27956:5;27945:16;;27882:85;;;:::o;27973:86::-;28008:7;28048:4;28041:5;28037:16;28026:27;;27973:86;;;:::o;28065:154::-;28121:9;28154:59;28170:42;28179:32;28205:5;28179:32;:::i;:::-;28170:42;:::i;:::-;28154:59;:::i;:::-;28141:72;;28065:154;;;:::o;28225:143::-;28318:43;28355:5;28318:43;:::i;:::-;28313:3;28306:56;28225:143;;:::o;28374:234::-;28473:4;28511:2;28500:9;28496:18;28488:26;;28524:77;28598:1;28587:9;28583:17;28574:6;28524:77;:::i;:::-;28374:234;;;;:::o;28614:173::-;28754:25;28750:1;28742:6;28738:14;28731:49;28614:173;:::o;28793:366::-;28935:3;28956:67;29020:2;29015:3;28956:67;:::i;:::-;28949:74;;29032:93;29121:3;29032:93;:::i;:::-;29150:2;29145:3;29141:12;29134:19;;28793:366;;;:::o;29165:419::-;29331:4;29369:2;29358:9;29354:18;29346:26;;29418:9;29412:4;29408:20;29404:1;29393:9;29389:17;29382:47;29446:131;29572:4;29446:131;:::i;:::-;29438:139;;29165:419;;;:::o;29590:216::-;29629:4;29649:19;29666:1;29649:19;:::i;:::-;29644:24;;29682:19;29699:1;29682:19;:::i;:::-;29677:24;;29725:1;29722;29718:9;29710:17;;29749:26;29743:4;29740:36;29737:62;;;29779:18;;:::i;:::-;29737:62;29590:216;;;;:::o;29812:138::-;29860:9;29893:51;29910:33;29919:23;29936:5;29919:23;:::i;:::-;29910:33;:::i;:::-;29893:51;:::i;:::-;29880:64;;29812:138;;;:::o;29956:127::-;30041:35;30070:5;30041:35;:::i;:::-;30036:3;30029:48;29956:127;;:::o;30089:328::-;30208:4;30246:2;30235:9;30231:18;30223:26;;30259:71;30327:1;30316:9;30312:17;30303:6;30259:71;:::i;:::-;30340:70;30406:2;30395:9;30391:18;30382:6;30340:70;:::i;:::-;30089:328;;;;;:::o;30423:182::-;30563:34;30559:1;30551:6;30547:14;30540:58;30423:182;:::o;30611:366::-;30753:3;30774:67;30838:2;30833:3;30774:67;:::i;:::-;30767:74;;30850:93;30939:3;30850:93;:::i;:::-;30968:2;30963:3;30959:12;30952:19;;30611:366;;;:::o;30983:419::-;31149:4;31187:2;31176:9;31172:18;31164:26;;31236:9;31230:4;31226:20;31222:1;31211:9;31207:17;31200:47;31264:131;31390:4;31264:131;:::i;:::-;31256:139;;30983:419;;;:::o;31408:166::-;31548:18;31544:1;31536:6;31532:14;31525:42;31408:166;:::o;31580:366::-;31722:3;31743:67;31807:2;31802:3;31743:67;:::i;:::-;31736:74;;31819:93;31908:3;31819:93;:::i;:::-;31937:2;31932:3;31928:12;31921:19;;31580:366;;;:::o;31952:419::-;32118:4;32156:2;32145:9;32141:18;32133:26;;32205:9;32199:4;32195:20;32191:1;32180:9;32176:17;32169:47;32233:131;32359:4;32233:131;:::i;:::-;32225:139;;31952:419;;;:::o;32377:167::-;32517:19;32513:1;32505:6;32501:14;32494:43;32377:167;:::o;32550:366::-;32692:3;32713:67;32777:2;32772:3;32713:67;:::i;:::-;32706:74;;32789:93;32878:3;32789:93;:::i;:::-;32907:2;32902:3;32898:12;32891:19;;32550:366;;;:::o;32922:419::-;33088:4;33126:2;33115:9;33111:18;33103:26;;33175:9;33169:4;33165:20;33161:1;33150:9;33146:17;33139:47;33203:131;33329:4;33203:131;:::i;:::-;33195:139;;32922:419;;;:::o;33347:162::-;33487:14;33483:1;33475:6;33471:14;33464:38;33347:162;:::o;33515:366::-;33657:3;33678:67;33742:2;33737:3;33678:67;:::i;:::-;33671:74;;33754:93;33843:3;33754:93;:::i;:::-;33872:2;33867:3;33863:12;33856:19;;33515:366;;;:::o;33887:419::-;34053:4;34091:2;34080:9;34076:18;34068:26;;34140:9;34134:4;34130:20;34126:1;34115:9;34111:17;34104:47;34168:131;34294:4;34168:131;:::i;:::-;34160:139;;33887:419;;;:::o;34312:166::-;34452:18;34448:1;34440:6;34436:14;34429:42;34312:166;:::o;34484:366::-;34626:3;34647:67;34711:2;34706:3;34647:67;:::i;:::-;34640:74;;34723:93;34812:3;34723:93;:::i;:::-;34841:2;34836:3;34832:12;34825:19;;34484:366;;;:::o;34856:419::-;35022:4;35060:2;35049:9;35045:18;35037:26;;35109:9;35103:4;35099:20;35095:1;35084:9;35080:17;35073:47;35137:131;35263:4;35137:131;:::i;:::-;35129:139;;34856:419;;;:::o;35281:175::-;35421:27;35417:1;35409:6;35405:14;35398:51;35281:175;:::o;35462:366::-;35604:3;35625:67;35689:2;35684:3;35625:67;:::i;:::-;35618:74;;35701:93;35790:3;35701:93;:::i;:::-;35819:2;35814:3;35810:12;35803:19;;35462:366;;;:::o;35834:419::-;36000:4;36038:2;36027:9;36023:18;36015:26;;36087:9;36081:4;36077:20;36073:1;36062:9;36058:17;36051:47;36115:131;36241:4;36115:131;:::i;:::-;36107:139;;35834:419;;;:::o;36259:230::-;36399:34;36395:1;36387:6;36383:14;36376:58;36468:13;36463:2;36455:6;36451:15;36444:38;36259:230;:::o;36495:366::-;36637:3;36658:67;36722:2;36717:3;36658:67;:::i;:::-;36651:74;;36734:93;36823:3;36734:93;:::i;:::-;36852:2;36847:3;36843:12;36836:19;;36495:366;;;:::o;36867:419::-;37033:4;37071:2;37060:9;37056:18;37048:26;;37120:9;37114:4;37110:20;37106:1;37095:9;37091:17;37084:47;37148:131;37274:4;37148:131;:::i;:::-;37140:139;;36867:419;;;:::o;37292:170::-;37432:22;37428:1;37420:6;37416:14;37409:46;37292:170;:::o;37468:366::-;37610:3;37631:67;37695:2;37690:3;37631:67;:::i;:::-;37624:74;;37707:93;37796:3;37707:93;:::i;:::-;37825:2;37820:3;37816:12;37809:19;;37468:366;;;:::o;37840:419::-;38006:4;38044:2;38033:9;38029:18;38021:26;;38093:9;38087:4;38083:20;38079:1;38068:9;38064:17;38057:47;38121:131;38247:4;38121:131;:::i;:::-;38113:139;;37840:419;;;:::o", - "source": "// SPDX-License-Identifier: UNLICENSED\npragma solidity ^0.8.18;\n\nimport '@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol';\n\nimport {GatewaySettingManager} from './GatewaySettingManager.sol';\nimport {IGateway, IERC20} from './interfaces/IGateway.sol';\n\n/**\n * @title Gateway\n * @notice This contract serves as a gateway for creating orders and managing settlements.\n */\ncontract Gateway is IGateway, GatewaySettingManager, PausableUpgradeable {\n\tstruct fee {\n\t\tuint256 protocolFee;\n\t\tuint256 liquidityProviderAmount;\n\t}\n\n\tmapping(bytes32 => Order) private order;\n\tmapping(address => uint256) private _nonce;\n\tuint256[50] private __gap;\n\n\t/// @custom:oz-upgrades-unsafe-allow constructor\n\tconstructor() {\n\t\t_disableInitializers();\n\t}\n\n\t/**\n\t * @dev Initialize function.\n\t */\n\tfunction initialize() external initializer {\n\t\tMAX_BPS = 100_000;\n\t\t__Ownable2Step_init();\n\t\t__Pausable_init();\n\t}\n\n\t/**\n\t * @dev Modifier that allows only the aggregator to call a function.\n\t */\n\tmodifier onlyAggregator() {\n\t\trequire(msg.sender == _aggregatorAddress, 'OnlyAggregator');\n\t\t_;\n\t}\n\n\t/* ##################################################################\n OWNER FUNCTIONS\n ################################################################## */\n\t/**\n\t * @dev Pause the contract.\n\t */\n\tfunction pause() external onlyOwner {\n\t\t_pause();\n\t}\n\n\t/**\n\t * @dev Unpause the contract.\n\t */\n\tfunction unpause() external onlyOwner {\n\t\t_unpause();\n\t}\n\n\t/* ##################################################################\n USER CALLS\n ################################################################## */\n\t/** @dev See {createOrder-IGateway}. */\n\tfunction createOrder(\n\t\taddress _token,\n\t\tuint256 _amount,\n\t\tuint96 _rate,\n\t\taddress _senderFeeRecipient,\n\t\tuint256 _senderFee,\n\t\taddress _refundAddress,\n\t\tstring calldata messageHash\n\t) external whenNotPaused returns (bytes32 orderId) {\n\t\t// checks that are required\n\t\t_handler(_token, _amount, _refundAddress, _senderFeeRecipient, _senderFee);\n\n\t\t// validate messageHash\n\t\trequire(bytes(messageHash).length != 0, 'InvalidMessageHash');\n\n\t\t// transfer token from msg.sender to contract\n\t\tIERC20(_token).transferFrom(msg.sender, address(this), _amount + _senderFee);\n\n\t\t// increase users nonce to avoid replay attacks\n\t\t_nonce[msg.sender]++;\n\n\t\t// generate transaction id for the transaction\n\t\torderId = keccak256(abi.encode(msg.sender, _nonce[msg.sender]));\n\n\t\t// update transaction\n\t\tuint256 _protocolFee = (_amount * protocolFeePercent) / (MAX_BPS + protocolFeePercent);\n\t\torder[orderId] = Order({\n\t\t\tsender: msg.sender,\n\t\t\ttoken: _token,\n\t\t\tsenderFeeRecipient: _senderFeeRecipient,\n\t\t\tsenderFee: _senderFee,\n\t\t\tprotocolFee: _protocolFee,\n\t\t\tisFulfilled: false,\n\t\t\tisRefunded: false,\n\t\t\trefundAddress: _refundAddress,\n\t\t\tcurrentBPS: uint64(MAX_BPS),\n\t\t\tamount: _amount - _protocolFee\n\t\t});\n\n\t\t// emit order created event\n\t\temit OrderCreated(\n\t\t\torder[orderId].sender,\n\t\t\t_token,\n\t\t\torder[orderId].amount,\n\t\t\t_protocolFee,\n\t\t\torderId,\n\t\t\t_rate,\n\t\t\tmessageHash\n\t\t);\n\t}\n\n\t/**\n\t * @dev Internal function to handle order creation.\n\t * @param _token The address of the token being traded.\n\t * @param _amount The amount of tokens being traded.\n\t * @param _refundAddress The address to refund the tokens in case of cancellation.\n\t * @param _senderFeeRecipient The address of the recipient for the sender fee.\n\t * @param _senderFee The amount of the sender fee.\n\t */\n\tfunction _handler(\n\t\taddress _token,\n\t\tuint256 _amount,\n\t\taddress _refundAddress,\n\t\taddress _senderFeeRecipient,\n\t\tuint256 _senderFee\n\t) internal view {\n\t\trequire(_isTokenSupported[_token] == 1, 'TokenNotSupported');\n\t\trequire(_amount != 0, 'AmountIsZero');\n\t\trequire(_refundAddress != address(0), 'ThrowZeroAddress');\n\n\t\tif (_senderFee != 0) {\n\t\t\trequire(_senderFeeRecipient != address(0), 'InvalidSenderFeeRecipient');\n\t\t}\n\t}\n\n\t/* ##################################################################\n AGGREGATOR FUNCTIONS\n ################################################################## */\n\t/** @dev See {settle-IGateway}. */\n\tfunction settle(\n\t\tbytes32 _splitOrderId,\n\t\tbytes32 _orderId,\n\t\taddress _liquidityProvider,\n\t\tuint64 _settlePercent\n\t) external onlyAggregator returns (bool) {\n\t\t// ensure the transaction has not been fulfilled\n\t\trequire(!order[_orderId].isFulfilled, 'OrderFulfilled');\n\t\trequire(!order[_orderId].isRefunded, 'OrderRefunded');\n\n\t\t// load the token into memory\n\t\taddress token = order[_orderId].token;\n\n\t\t// subtract sum of amount based on the input _settlePercent\n\t\torder[_orderId].currentBPS -= _settlePercent;\n\n\t\tif (order[_orderId].currentBPS == 0) {\n\t\t\t// update the transaction to be fulfilled\n\t\t\torder[_orderId].isFulfilled = true;\n\n\t\t\tif (order[_orderId].senderFee != 0) {\n\t\t\t\t// transfer sender fee\n\t\t\t\tIERC20(order[_orderId].token).transfer(\n\t\t\t\t\torder[_orderId].senderFeeRecipient,\n\t\t\t\t\torder[_orderId].senderFee\n\t\t\t\t);\n\n\t\t\t\t// emit event\n\t\t\t\temit SenderFeeTransferred(\n\t\t\t\t\torder[_orderId].senderFeeRecipient,\n\t\t\t\t\torder[_orderId].senderFee\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tif (order[_orderId].protocolFee != 0) {\n\t\t\t\t// transfer protocol fee\n\t\t\t\tIERC20(token).transfer(treasuryAddress, order[_orderId].protocolFee);\n\t\t\t}\n\t\t}\n\n\t\t// transfer to liquidity provider\n\t\tuint256 liquidityProviderAmount = (order[_orderId].amount * _settlePercent) / MAX_BPS;\n\t\torder[_orderId].amount -= liquidityProviderAmount;\n\t\tIERC20(token).transfer(_liquidityProvider, liquidityProviderAmount);\n\n\t\t// emit settled event\n\t\temit OrderSettled(_splitOrderId, _orderId, _liquidityProvider, _settlePercent);\n\n\t\treturn true;\n\t}\n\n\t/** @dev See {refund-IGateway}. */\n\tfunction refund(uint256 _fee, bytes32 _orderId) external onlyAggregator returns (bool) {\n\t\t// ensure the transaction has not been fulfilled\n\t\trequire(!order[_orderId].isFulfilled, 'OrderFulfilled');\n\t\trequire(!order[_orderId].isRefunded, 'OrderRefunded');\n\t\trequire(order[_orderId].protocolFee >= _fee, 'FeeExceedsProtocolFee');\n\n\t\t// transfer refund fee to the treasury\n\t\tIERC20(order[_orderId].token).transfer(treasuryAddress, _fee);\n\n\t\t// reset state values\n\t\torder[_orderId].isRefunded = true;\n\t\torder[_orderId].currentBPS = 0;\n\n\t\t// deduct fee from order amount\n\t\tuint256 refundAmount = order[_orderId].amount + order[_orderId].protocolFee - _fee;\n\n\t\t// transfer refund amount and sender fee to the refund address\n\t\tIERC20(order[_orderId].token).transfer(\n\t\t\torder[_orderId].refundAddress,\n\t\t\trefundAmount + order[_orderId].senderFee\n\t\t);\n\n\t\t// emit refunded event\n\t\temit OrderRefunded(_fee, _orderId);\n\n\t\treturn true;\n\t}\n\n\t/* ##################################################################\n VIEW CALLS\n ################################################################## */\n\t/** @dev See {getOrderInfo-IGateway}. */\n\tfunction getOrderInfo(bytes32 _orderId) external view returns (Order memory) {\n\t\treturn order[_orderId];\n\t}\n\n\t/** @dev See {isTokenSupported-IGateway}. */\n\tfunction isTokenSupported(address _token) external view returns (bool) {\n\t\tif (_isTokenSupported[_token] == 1) return true;\n\t\treturn false;\n\t}\n\n\t/** @dev See {getFeeDetails-IGateway}. */\n\tfunction getFeeDetails() external view returns (uint64, uint256) {\n\t\treturn (protocolFeePercent, MAX_BPS);\n\t}\n}\n", - "sourcePath": "/Users/chibie/paycrest/contracts/contracts/Gateway.sol", + "bytecode": "0x60806040523480156200001157600080fd5b50d380156200001f57600080fd5b50d280156200002d57600080fd5b506200003e6200004460201b60201c565b620001ee565b600060019054906101000a900460ff161562000097576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200008e9062000191565b60405180910390fd5b60ff801660008054906101000a900460ff1660ff1614620001085760ff6000806101000a81548160ff021916908360ff1602179055507f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249860ff604051620000ff9190620001d1565b60405180910390a15b565b600082825260208201905092915050565b7f496e697469616c697a61626c653a20636f6e747261637420697320696e69746960008201527f616c697a696e6700000000000000000000000000000000000000000000000000602082015250565b6000620001796027836200010a565b915062000186826200011b565b604082019050919050565b60006020820190508181036000830152620001ac816200016a565b9050919050565b600060ff82169050919050565b620001cb81620001b3565b82525050565b6000602082019050620001e86000830184620001c0565b92915050565b61388080620001fe6000396000f3fe608060405234801561001057600080fd5b50d3801561001d57600080fd5b50d2801561002a57600080fd5b50600436106101305760003560e01c8063809804f7116100bc578063b810c6361161008b578063b810c6361461029b578063cd992400146102ba578063e30c3978146102d6578063f22ee704146102f4578063f2fde38b1461032457610130565b8063809804f7146102395780638129fc1c146102695780638456cb59146102735780638da5cb5b1461027d57610130565b8063715018a611610103578063715018a61461019557806371eedb881461019f57806375151b63146101cf578063768c6ec0146101ff57806379ba50971461022f57610130565b80633f4ba83a1461013557806340ebc6771461013f57806347094e2e1461015b5780635c975abb14610177575b600080fd5b61013d610340565b005b6101596004803603810190610154919061259d565b610352565b005b6101756004803603810190610170919061261d565b61061a565b005b61017f610685565b60405161018c9190612665565b60405180910390f35b61019d61069c565b005b6101b960048036038101906101b491906126b6565b6106b0565b6040516101c69190612665565b60405180910390f35b6101e960048036038101906101e491906126f6565b610b45565b6040516101f69190612665565b60405180910390f35b61021960048036038101906102149190612723565b610ba1565b6040516102269190612870565b60405180910390f35b610237610db9565b005b610253600480360381019061024e919061291d565b610e46565b60405161026091906129ee565b60405180910390f35b61027161137b565b005b61027b6114cb565b005b6102856114dd565b6040516102929190612a18565b60405180910390f35b6102a3611507565b6040516102b1929190612a51565b60405180910390f35b6102d460048036038101906102cf9190612a7a565b61152c565b005b6102de6116b1565b6040516102eb9190612a18565b60405180910390f35b61030e60048036038101906103099190612acd565b6116db565b60405161031b9190612665565b60405180910390f35b61033e600480360381019061033991906126f6565b611d3e565b005b610348611deb565b610350611e69565b565b61035a611deb565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036103c9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016103c090612b91565b60405180910390fd5b60007f747265617375727900000000000000000000000000000000000000000000000083036104cc578173ffffffffffffffffffffffffffffffffffffffff16609860089054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1603610482576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161047990612c23565b60405180910390fd5b81609860086101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600190506105ca565b7f61676772656761746f720000000000000000000000000000000000000000000083036105c9578173ffffffffffffffffffffffffffffffffffffffff16609960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1603610583576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161057a90612cb5565b60405180910390fd5b81609960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600190505b5b8015610615578173ffffffffffffffffffffffffffffffffffffffff16837fbbc5b96e57cfecb3dbeeadf92e87f15e58e64fcd75cbe256dcc5d9ef2e51e8a460405160405180910390a35b505050565b610622611deb565b80609860006101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055507f1ce29a697a4765bd17d91df93ba75b250b629ecf030553ff1f6ab59f15ae6c7b8160405161067a9190612cd5565b60405180910390a150565b600060cd60009054906101000a900460ff16905090565b6106a4611deb565b6106ae6000611ecc565b565b6000609960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610742576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161073990612d3c565b60405180910390fd5b60ff600083815260200190815260200160002060050160009054906101000a900460ff16156107a6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161079d90612da8565b60405180910390fd5b60ff600083815260200190815260200160002060050160019054906101000a900460ff161561080a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161080190612e14565b60405180910390fd5b8260ff6000848152602001908152602001600020600401541015610863576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161085a90612e80565b60405180910390fd5b60ff600083815260200190815260200160002060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb609860089054906101000a900473ffffffffffffffffffffffffffffffffffffffff16856040518363ffffffff1660e01b81526004016108f6929190612ea0565b6020604051808303816000875af1158015610915573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109399190612ef5565b50600160ff600084815260200190815260200160002060050160016101000a81548160ff021916908315150217905550600060ff600084815260200190815260200160002060060160006101000a8154816bffffffffffffffffffffffff02191690836bffffffffffffffffffffffff16021790555060008360ff60008581526020019081526020016000206004015460ff6000868152602001908152602001600020600701546109ea9190612f51565b6109f49190612f85565b905060ff600084815260200190815260200160002060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb60ff600086815260200190815260200160002060050160029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1660ff60008781526020019081526020016000206003015484610aa19190612f51565b6040518363ffffffff1660e01b8152600401610abe929190612ea0565b6020604051808303816000875af1158015610add573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b019190612ef5565b50827f0736fe428e1747ca8d387c2e6fa1a31a0cde62d3a167c40a46ade59a3cdc828e85604051610b329190612fb9565b60405180910390a2600191505092915050565b60006001609a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205403610b975760019050610b9c565b600090505b919050565b610ba9612416565b60ff6000838152602001908152602001600020604051806101400160405290816000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016001820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016002820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200160038201548152602001600482015481526020016005820160009054906101000a900460ff161515151581526020016005820160019054906101000a900460ff161515151581526020016005820160029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016006820160009054906101000a90046bffffffffffffffffffffffff166bffffffffffffffffffffffff166bffffffffffffffffffffffff1681526020016007820154815250509050919050565b6000610dc3611efd565b90508073ffffffffffffffffffffffffffffffffffffffff16610de46116b1565b73ffffffffffffffffffffffffffffffffffffffff1614610e3a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e3190613046565b60405180910390fd5b610e4381611ecc565b50565b6000610e50611f05565b610e5d8989868989611f4f565b60008383905003610ea3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e9a906130b2565b60405180910390fd5b8873ffffffffffffffffffffffffffffffffffffffff166323b872dd3330888c610ecd9190612f51565b6040518463ffffffff1660e01b8152600401610eeb939291906130d2565b6020604051808303816000875af1158015610f0a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f2e9190612ef5565b5061010060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000815480929190610f8090613109565b91905055503361010060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054604051602001610fd8929190612ea0565b6040516020818303038152906040528051906020012090506000609754609860009054906101000a900467ffffffffffffffff1667ffffffffffffffff168a6110219190613151565b61102b91906131c2565b90506040518061014001604052803373ffffffffffffffffffffffffffffffffffffffff1681526020018b73ffffffffffffffffffffffffffffffffffffffff1681526020018873ffffffffffffffffffffffffffffffffffffffff1681526020018781526020018281526020016000151581526020016000151581526020018673ffffffffffffffffffffffffffffffffffffffff16815260200160975467ffffffffffffffff166bffffffffffffffffffffffff1681526020018a81525060ff600084815260200190815260200160002060008201518160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060208201518160010160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060408201518160020160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550606082015181600301556080820151816004015560a08201518160050160006101000a81548160ff02191690831515021790555060c08201518160050160016101000a81548160ff02191690831515021790555060e08201518160050160026101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506101008201518160060160006101000a8154816bffffffffffffffffffffffff02191690836bffffffffffffffffffffffff160217905550610120820151816007015590505060ff6000838152602001908152602001600020600701548a73ffffffffffffffffffffffffffffffffffffffff1660ff600085815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f40ccd1ceb111a3c186ef9911e1b876dc1f789ed331b86097b3b8851055b6a13784868d8a8a60405161136695949392919061327b565b60405180910390a45098975050505050505050565b60008060019054906101000a900460ff161590508080156113ac5750600160008054906101000a900460ff1660ff16105b806113d957506113bb30612102565b1580156113d85750600160008054906101000a900460ff1660ff16145b5b611418576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161140f9061333b565b60405180910390fd5b60016000806101000a81548160ff021916908360ff1602179055508015611455576001600060016101000a81548160ff0219169083151502179055505b620186a0609781905550611467612125565b61146f61217e565b80156114c85760008060016101000a81548160ff0219169083151502179055507f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249860016040516114bf91906133a3565b60405180910390a15b50565b6114d3611deb565b6114db6121d7565b565b6000603360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600080609860009054906101000a900467ffffffffffffffff16609754915091509091565b611534611deb565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036115a3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161159a90612b91565b60405180910390fd5b60018114806115b25750600281145b6115f1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115e89061340a565b60405180910390fd5b7f746f6b656e00000000000000000000000000000000000000000000000000000083036116ac5780609a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff16837fcfa976492af7c14a916cc3a239f4c9c75bbd7f5f0e398beb41d892c7eeccae4c836040516116a39190612fb9565b60405180910390a35b505050565b6000606560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6000609960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461176d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161176490612d3c565b60405180910390fd5b60ff600085815260200190815260200160002060050160009054906101000a900460ff16156117d1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117c890612da8565b60405180910390fd5b60ff600085815260200190815260200160002060050160019054906101000a900460ff1615611835576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161182c90612e14565b60405180910390fd5b600060ff600086815260200190815260200160002060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508267ffffffffffffffff1660ff600087815260200190815260200160002060060160008282829054906101000a90046bffffffffffffffffffffffff166118b7919061342a565b92506101000a8154816bffffffffffffffffffffffff02191690836bffffffffffffffffffffffff160217905550600060ff600087815260200190815260200160002060060160009054906101000a90046bffffffffffffffffffffffff166bffffffffffffffffffffffff1603611b0957600160ff600087815260200190815260200160002060050160006101000a81548160ff021916908315150217905550600060ff60008781526020019081526020016000206003015414611b085760ff600086815260200190815260200160002060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb60ff600088815260200190815260200160002060020160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1660ff6000898152602001908152602001600020600301546040518363ffffffff1660e01b8152600401611a33929190612ea0565b6020604051808303816000875af1158015611a52573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a769190612ef5565b5060ff60008681526020019081526020016000206003015460ff600087815260200190815260200160002060020160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f44f6938ca4a10313aabb76f874cced61e35710a734a126e4afb34461bf8c250160405160405180910390a35b5b60006097548467ffffffffffffffff1660ff600089815260200190815260200160002060070154611b3a9190613151565b611b4491906131c2565b90508060ff60008881526020019081526020016000206007016000828254611b6c9190612f85565b925050819055506000609754609860009054906101000a900467ffffffffffffffff1667ffffffffffffffff1683611ba49190613151565b611bae91906131c2565b90508082611bbc9190612f85565b91508273ffffffffffffffffffffffffffffffffffffffff1663a9059cbb609860089054906101000a900473ffffffffffffffffffffffffffffffffffffffff16836040518363ffffffff1660e01b8152600401611c1b929190612ea0565b6020604051808303816000875af1158015611c3a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c5e9190612ef5565b508273ffffffffffffffffffffffffffffffffffffffff1663a9059cbb87846040518363ffffffff1660e01b8152600401611c9a929190612ea0565b6020604051808303816000875af1158015611cb9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611cdd9190612ef5565b508573ffffffffffffffffffffffffffffffffffffffff16877f98ece21e01a01cbe1d1c0dad3b053c8fbd368f99be78be958fcf1d1d13fd249a8a88604051611d2792919061349b565b60405180910390a360019350505050949350505050565b611d46611deb565b80606560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16611da66114dd565b73ffffffffffffffffffffffffffffffffffffffff167f38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e2270060405160405180910390a350565b611df3611efd565b73ffffffffffffffffffffffffffffffffffffffff16611e116114dd565b73ffffffffffffffffffffffffffffffffffffffff1614611e67576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e5e90613510565b60405180910390fd5b565b611e7161223a565b600060cd60006101000a81548160ff0219169083151502179055507f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa611eb5611efd565b604051611ec29190612a18565b60405180910390a1565b606560006101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055611efa81612283565b50565b600033905090565b611f0d610685565b15611f4d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f449061357c565b60405180910390fd5b565b6001609a60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414611fd1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fc8906135e8565b60405180910390fd5b60008403612014576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161200b90613654565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603612083576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161207a906136c0565b60405180910390fd5b600081146120fb57600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036120fa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120f19061372c565b60405180910390fd5b5b5050505050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b600060019054906101000a900460ff16612174576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161216b906137be565b60405180910390fd5b61217c612349565b565b600060019054906101000a900460ff166121cd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016121c4906137be565b60405180910390fd5b6121d56123aa565b565b6121df611f05565b600160cd60006101000a81548160ff0219169083151502179055507f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258612223611efd565b6040516122309190612a18565b60405180910390a1565b612242610685565b612281576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016122789061382a565b60405180910390fd5b565b6000603360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081603360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600060019054906101000a900460ff16612398576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161238f906137be565b60405180910390fd5b6123a86123a3611efd565b611ecc565b565b600060019054906101000a900460ff166123f9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016123f0906137be565b60405180910390fd5b600060cd60006101000a81548160ff021916908315150217905550565b604051806101400160405280600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff1681526020016000815260200160008152602001600015158152602001600015158152602001600073ffffffffffffffffffffffffffffffffffffffff16815260200160006bffffffffffffffffffffffff168152602001600081525090565b600080fd5b600080fd5b6000819050919050565b6124f0816124dd565b81146124fb57600080fd5b50565b60008135905061250d816124e7565b92915050565b600074ffffffffffffffffffffffffffffffffffffffffff82169050919050565b61253d81612513565b811461254857600080fd5b50565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006125768261254b565b9050919050565b60008135905061258c81612534565b6125958161256b565b905092915050565b600080604083850312156125b4576125b36124d3565b5b60006125c2858286016124fe565b92505060206125d38582860161257d565b9150509250929050565b600067ffffffffffffffff82169050919050565b6125fa816125dd565b811461260557600080fd5b50565b600081359050612617816125f1565b92915050565b600060208284031215612633576126326124d3565b5b600061264184828501612608565b91505092915050565b60008115159050919050565b61265f8161264a565b82525050565b600060208201905061267a6000830184612656565b92915050565b6000819050919050565b61269381612680565b811461269e57600080fd5b50565b6000813590506126b08161268a565b92915050565b600080604083850312156126cd576126cc6124d3565b5b60006126db858286016126a1565b92505060206126ec858286016124fe565b9150509250929050565b60006020828403121561270c5761270b6124d3565b5b600061271a8482850161257d565b91505092915050565b600060208284031215612739576127386124d3565b5b6000612747848285016124fe565b91505092915050565b6127598161256b565b82525050565b61276881612680565b82525050565b6127778161264a565b82525050565b60006bffffffffffffffffffffffff82169050919050565b61279e8161277d565b82525050565b610140820160008201516127bb6000850182612750565b5060208201516127ce6020850182612750565b5060408201516127e16040850182612750565b5060608201516127f4606085018261275f565b506080820151612807608085018261275f565b5060a082015161281a60a085018261276e565b5060c082015161282d60c085018261276e565b5060e082015161284060e0850182612750565b50610100820151612855610100850182612795565b5061012082015161286a61012085018261275f565b50505050565b60006101408201905061288660008301846127a4565b92915050565b6128958161277d565b81146128a057600080fd5b50565b6000813590506128b28161288c565b92915050565b600080fd5b600080fd5b600080fd5b60008083601f8401126128dd576128dc6128b8565b5b8235905067ffffffffffffffff8111156128fa576128f96128bd565b5b602083019150836001820283011115612916576129156128c2565b5b9250929050565b60008060008060008060008060e0898b03121561293d5761293c6124d3565b5b600061294b8b828c0161257d565b985050602061295c8b828c016126a1565b975050604061296d8b828c016128a3565b965050606061297e8b828c0161257d565b955050608061298f8b828c016126a1565b94505060a06129a08b828c0161257d565b93505060c089013567ffffffffffffffff8111156129c1576129c06124d8565b5b6129cd8b828c016128c7565b92509250509295985092959890939650565b6129e8816124dd565b82525050565b6000602082019050612a0360008301846129df565b92915050565b612a128161256b565b82525050565b6000602082019050612a2d6000830184612a09565b92915050565b612a3c816125dd565b82525050565b612a4b81612680565b82525050565b6000604082019050612a666000830185612a33565b612a736020830184612a42565b9392505050565b600080600060608486031215612a9357612a926124d3565b5b6000612aa1868287016124fe565b9350506020612ab28682870161257d565b9250506040612ac3868287016126a1565b9150509250925092565b60008060008060808587031215612ae757612ae66124d3565b5b6000612af5878288016124fe565b9450506020612b06878288016124fe565b9350506040612b178782880161257d565b9250506060612b2887828801612608565b91505092959194509250565b600082825260208201905092915050565b7f476174657761793a207a65726f20616464726573730000000000000000000000600082015250565b6000612b7b601583612b34565b9150612b8682612b45565b602082019050919050565b60006020820190508181036000830152612baa81612b6e565b9050919050565b7f476174657761793a207472656173757279206164647265737320616c7265616460008201527f7920736574000000000000000000000000000000000000000000000000000000602082015250565b6000612c0d602583612b34565b9150612c1882612bb1565b604082019050919050565b60006020820190508181036000830152612c3c81612c00565b9050919050565b7f476174657761793a2061676772656761746f72206164647265737320616c726560008201527f6164792073657400000000000000000000000000000000000000000000000000602082015250565b6000612c9f602783612b34565b9150612caa82612c43565b604082019050919050565b60006020820190508181036000830152612cce81612c92565b9050919050565b6000602082019050612cea6000830184612a33565b92915050565b7f4f6e6c7941676772656761746f72000000000000000000000000000000000000600082015250565b6000612d26600e83612b34565b9150612d3182612cf0565b602082019050919050565b60006020820190508181036000830152612d5581612d19565b9050919050565b7f4f7264657246756c66696c6c6564000000000000000000000000000000000000600082015250565b6000612d92600e83612b34565b9150612d9d82612d5c565b602082019050919050565b60006020820190508181036000830152612dc181612d85565b9050919050565b7f4f72646572526566756e64656400000000000000000000000000000000000000600082015250565b6000612dfe600d83612b34565b9150612e0982612dc8565b602082019050919050565b60006020820190508181036000830152612e2d81612df1565b9050919050565b7f4665654578636565647350726f746f636f6c4665650000000000000000000000600082015250565b6000612e6a601583612b34565b9150612e7582612e34565b602082019050919050565b60006020820190508181036000830152612e9981612e5d565b9050919050565b6000604082019050612eb56000830185612a09565b612ec26020830184612a42565b9392505050565b612ed28161264a565b8114612edd57600080fd5b50565b600081519050612eef81612ec9565b92915050565b600060208284031215612f0b57612f0a6124d3565b5b6000612f1984828501612ee0565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000612f5c82612680565b9150612f6783612680565b9250828201905080821115612f7f57612f7e612f22565b5b92915050565b6000612f9082612680565b9150612f9b83612680565b9250828203905081811115612fb357612fb2612f22565b5b92915050565b6000602082019050612fce6000830184612a42565b92915050565b7f4f776e61626c6532537465703a2063616c6c6572206973206e6f74207468652060008201527f6e6577206f776e65720000000000000000000000000000000000000000000000602082015250565b6000613030602983612b34565b915061303b82612fd4565b604082019050919050565b6000602082019050818103600083015261305f81613023565b9050919050565b7f496e76616c69644d657373616765486173680000000000000000000000000000600082015250565b600061309c601283612b34565b91506130a782613066565b602082019050919050565b600060208201905081810360008301526130cb8161308f565b9050919050565b60006060820190506130e76000830186612a09565b6130f46020830185612a09565b6131016040830184612a42565b949350505050565b600061311482612680565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361314657613145612f22565b5b600182019050919050565b600061315c82612680565b915061316783612680565b925082820261317581612680565b9150828204841483151761318c5761318b612f22565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b60006131cd82612680565b91506131d883612680565b9250826131e8576131e7613193565b5b828204905092915050565b6000819050919050565b600061321861321361320e8461277d565b6131f3565b612680565b9050919050565b613228816131fd565b82525050565b82818337600083830152505050565b6000601f19601f8301169050919050565b600061325a8385612b34565b935061326783858461322e565b6132708361323d565b840190509392505050565b60006080820190506132906000830188612a42565b61329d60208301876129df565b6132aa604083018661321f565b81810360608301526132bd81848661324e565b90509695505050505050565b7f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160008201527f647920696e697469616c697a6564000000000000000000000000000000000000602082015250565b6000613325602e83612b34565b9150613330826132c9565b604082019050919050565b6000602082019050818103600083015261335481613318565b9050919050565b6000819050919050565b600060ff82169050919050565b600061338d6133886133838461335b565b6131f3565b613365565b9050919050565b61339d81613372565b82525050565b60006020820190506133b86000830184613394565b92915050565b7f476174657761793a20696e76616c696420737461747573000000000000000000600082015250565b60006133f4601783612b34565b91506133ff826133be565b602082019050919050565b60006020820190508181036000830152613423816133e7565b9050919050565b60006134358261277d565b91506134408361277d565b925082820390506bffffffffffffffffffffffff81111561346457613463612f22565b5b92915050565b600061348561348061347b846125dd565b6131f3565b61277d565b9050919050565b6134958161346a565b82525050565b60006040820190506134b060008301856129df565b6134bd602083018461348c565b9392505050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b60006134fa602083612b34565b9150613505826134c4565b602082019050919050565b60006020820190508181036000830152613529816134ed565b9050919050565b7f5061757361626c653a2070617573656400000000000000000000000000000000600082015250565b6000613566601083612b34565b915061357182613530565b602082019050919050565b6000602082019050818103600083015261359581613559565b9050919050565b7f546f6b656e4e6f74537570706f72746564000000000000000000000000000000600082015250565b60006135d2601183612b34565b91506135dd8261359c565b602082019050919050565b60006020820190508181036000830152613601816135c5565b9050919050565b7f416d6f756e7449735a65726f0000000000000000000000000000000000000000600082015250565b600061363e600c83612b34565b915061364982613608565b602082019050919050565b6000602082019050818103600083015261366d81613631565b9050919050565b7f5468726f775a65726f4164647265737300000000000000000000000000000000600082015250565b60006136aa601083612b34565b91506136b582613674565b602082019050919050565b600060208201905081810360008301526136d98161369d565b9050919050565b7f496e76616c696453656e646572466565526563697069656e7400000000000000600082015250565b6000613716601983612b34565b9150613721826136e0565b602082019050919050565b6000602082019050818103600083015261374581613709565b9050919050565b7f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960008201527f6e697469616c697a696e67000000000000000000000000000000000000000000602082015250565b60006137a8602b83612b34565b91506137b38261374c565b604082019050919050565b600060208201905081810360008301526137d78161379b565b9050919050565b7f5061757361626c653a206e6f7420706175736564000000000000000000000000600082015250565b6000613814601483612b34565b915061381f826137de565b602082019050919050565b6000602082019050818103600083015261384381613807565b905091905056fea26474726f6e58221220081a009ba3e4ca96d8446d5f355740cbb5a0eb734de0a667fef6eb6fa696085264736f6c63430008120033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50d3801561001d57600080fd5b50d2801561002a57600080fd5b50600436106101305760003560e01c8063809804f7116100bc578063b810c6361161008b578063b810c6361461029b578063cd992400146102ba578063e30c3978146102d6578063f22ee704146102f4578063f2fde38b1461032457610130565b8063809804f7146102395780638129fc1c146102695780638456cb59146102735780638da5cb5b1461027d57610130565b8063715018a611610103578063715018a61461019557806371eedb881461019f57806375151b63146101cf578063768c6ec0146101ff57806379ba50971461022f57610130565b80633f4ba83a1461013557806340ebc6771461013f57806347094e2e1461015b5780635c975abb14610177575b600080fd5b61013d610340565b005b6101596004803603810190610154919061259d565b610352565b005b6101756004803603810190610170919061261d565b61061a565b005b61017f610685565b60405161018c9190612665565b60405180910390f35b61019d61069c565b005b6101b960048036038101906101b491906126b6565b6106b0565b6040516101c69190612665565b60405180910390f35b6101e960048036038101906101e491906126f6565b610b45565b6040516101f69190612665565b60405180910390f35b61021960048036038101906102149190612723565b610ba1565b6040516102269190612870565b60405180910390f35b610237610db9565b005b610253600480360381019061024e919061291d565b610e46565b60405161026091906129ee565b60405180910390f35b61027161137b565b005b61027b6114cb565b005b6102856114dd565b6040516102929190612a18565b60405180910390f35b6102a3611507565b6040516102b1929190612a51565b60405180910390f35b6102d460048036038101906102cf9190612a7a565b61152c565b005b6102de6116b1565b6040516102eb9190612a18565b60405180910390f35b61030e60048036038101906103099190612acd565b6116db565b60405161031b9190612665565b60405180910390f35b61033e600480360381019061033991906126f6565b611d3e565b005b610348611deb565b610350611e69565b565b61035a611deb565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036103c9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016103c090612b91565b60405180910390fd5b60007f747265617375727900000000000000000000000000000000000000000000000083036104cc578173ffffffffffffffffffffffffffffffffffffffff16609860089054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1603610482576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161047990612c23565b60405180910390fd5b81609860086101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600190506105ca565b7f61676772656761746f720000000000000000000000000000000000000000000083036105c9578173ffffffffffffffffffffffffffffffffffffffff16609960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1603610583576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161057a90612cb5565b60405180910390fd5b81609960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600190505b5b8015610615578173ffffffffffffffffffffffffffffffffffffffff16837fbbc5b96e57cfecb3dbeeadf92e87f15e58e64fcd75cbe256dcc5d9ef2e51e8a460405160405180910390a35b505050565b610622611deb565b80609860006101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055507f1ce29a697a4765bd17d91df93ba75b250b629ecf030553ff1f6ab59f15ae6c7b8160405161067a9190612cd5565b60405180910390a150565b600060cd60009054906101000a900460ff16905090565b6106a4611deb565b6106ae6000611ecc565b565b6000609960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610742576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161073990612d3c565b60405180910390fd5b60ff600083815260200190815260200160002060050160009054906101000a900460ff16156107a6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161079d90612da8565b60405180910390fd5b60ff600083815260200190815260200160002060050160019054906101000a900460ff161561080a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161080190612e14565b60405180910390fd5b8260ff6000848152602001908152602001600020600401541015610863576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161085a90612e80565b60405180910390fd5b60ff600083815260200190815260200160002060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb609860089054906101000a900473ffffffffffffffffffffffffffffffffffffffff16856040518363ffffffff1660e01b81526004016108f6929190612ea0565b6020604051808303816000875af1158015610915573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109399190612ef5565b50600160ff600084815260200190815260200160002060050160016101000a81548160ff021916908315150217905550600060ff600084815260200190815260200160002060060160006101000a8154816bffffffffffffffffffffffff02191690836bffffffffffffffffffffffff16021790555060008360ff60008581526020019081526020016000206004015460ff6000868152602001908152602001600020600701546109ea9190612f51565b6109f49190612f85565b905060ff600084815260200190815260200160002060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb60ff600086815260200190815260200160002060050160029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1660ff60008781526020019081526020016000206003015484610aa19190612f51565b6040518363ffffffff1660e01b8152600401610abe929190612ea0565b6020604051808303816000875af1158015610add573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b019190612ef5565b50827f0736fe428e1747ca8d387c2e6fa1a31a0cde62d3a167c40a46ade59a3cdc828e85604051610b329190612fb9565b60405180910390a2600191505092915050565b60006001609a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205403610b975760019050610b9c565b600090505b919050565b610ba9612416565b60ff6000838152602001908152602001600020604051806101400160405290816000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016001820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016002820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200160038201548152602001600482015481526020016005820160009054906101000a900460ff161515151581526020016005820160019054906101000a900460ff161515151581526020016005820160029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016006820160009054906101000a90046bffffffffffffffffffffffff166bffffffffffffffffffffffff166bffffffffffffffffffffffff1681526020016007820154815250509050919050565b6000610dc3611efd565b90508073ffffffffffffffffffffffffffffffffffffffff16610de46116b1565b73ffffffffffffffffffffffffffffffffffffffff1614610e3a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e3190613046565b60405180910390fd5b610e4381611ecc565b50565b6000610e50611f05565b610e5d8989868989611f4f565b60008383905003610ea3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e9a906130b2565b60405180910390fd5b8873ffffffffffffffffffffffffffffffffffffffff166323b872dd3330888c610ecd9190612f51565b6040518463ffffffff1660e01b8152600401610eeb939291906130d2565b6020604051808303816000875af1158015610f0a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f2e9190612ef5565b5061010060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000815480929190610f8090613109565b91905055503361010060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054604051602001610fd8929190612ea0565b6040516020818303038152906040528051906020012090506000609754609860009054906101000a900467ffffffffffffffff1667ffffffffffffffff168a6110219190613151565b61102b91906131c2565b90506040518061014001604052803373ffffffffffffffffffffffffffffffffffffffff1681526020018b73ffffffffffffffffffffffffffffffffffffffff1681526020018873ffffffffffffffffffffffffffffffffffffffff1681526020018781526020018281526020016000151581526020016000151581526020018673ffffffffffffffffffffffffffffffffffffffff16815260200160975467ffffffffffffffff166bffffffffffffffffffffffff1681526020018a81525060ff600084815260200190815260200160002060008201518160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060208201518160010160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060408201518160020160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550606082015181600301556080820151816004015560a08201518160050160006101000a81548160ff02191690831515021790555060c08201518160050160016101000a81548160ff02191690831515021790555060e08201518160050160026101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506101008201518160060160006101000a8154816bffffffffffffffffffffffff02191690836bffffffffffffffffffffffff160217905550610120820151816007015590505060ff6000838152602001908152602001600020600701548a73ffffffffffffffffffffffffffffffffffffffff1660ff600085815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f40ccd1ceb111a3c186ef9911e1b876dc1f789ed331b86097b3b8851055b6a13784868d8a8a60405161136695949392919061327b565b60405180910390a45098975050505050505050565b60008060019054906101000a900460ff161590508080156113ac5750600160008054906101000a900460ff1660ff16105b806113d957506113bb30612102565b1580156113d85750600160008054906101000a900460ff1660ff16145b5b611418576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161140f9061333b565b60405180910390fd5b60016000806101000a81548160ff021916908360ff1602179055508015611455576001600060016101000a81548160ff0219169083151502179055505b620186a0609781905550611467612125565b61146f61217e565b80156114c85760008060016101000a81548160ff0219169083151502179055507f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249860016040516114bf91906133a3565b60405180910390a15b50565b6114d3611deb565b6114db6121d7565b565b6000603360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600080609860009054906101000a900467ffffffffffffffff16609754915091509091565b611534611deb565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036115a3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161159a90612b91565b60405180910390fd5b60018114806115b25750600281145b6115f1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115e89061340a565b60405180910390fd5b7f746f6b656e00000000000000000000000000000000000000000000000000000083036116ac5780609a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff16837fcfa976492af7c14a916cc3a239f4c9c75bbd7f5f0e398beb41d892c7eeccae4c836040516116a39190612fb9565b60405180910390a35b505050565b6000606560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6000609960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461176d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161176490612d3c565b60405180910390fd5b60ff600085815260200190815260200160002060050160009054906101000a900460ff16156117d1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117c890612da8565b60405180910390fd5b60ff600085815260200190815260200160002060050160019054906101000a900460ff1615611835576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161182c90612e14565b60405180910390fd5b600060ff600086815260200190815260200160002060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508267ffffffffffffffff1660ff600087815260200190815260200160002060060160008282829054906101000a90046bffffffffffffffffffffffff166118b7919061342a565b92506101000a8154816bffffffffffffffffffffffff02191690836bffffffffffffffffffffffff160217905550600060ff600087815260200190815260200160002060060160009054906101000a90046bffffffffffffffffffffffff166bffffffffffffffffffffffff1603611b0957600160ff600087815260200190815260200160002060050160006101000a81548160ff021916908315150217905550600060ff60008781526020019081526020016000206003015414611b085760ff600086815260200190815260200160002060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb60ff600088815260200190815260200160002060020160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1660ff6000898152602001908152602001600020600301546040518363ffffffff1660e01b8152600401611a33929190612ea0565b6020604051808303816000875af1158015611a52573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a769190612ef5565b5060ff60008681526020019081526020016000206003015460ff600087815260200190815260200160002060020160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f44f6938ca4a10313aabb76f874cced61e35710a734a126e4afb34461bf8c250160405160405180910390a35b5b60006097548467ffffffffffffffff1660ff600089815260200190815260200160002060070154611b3a9190613151565b611b4491906131c2565b90508060ff60008881526020019081526020016000206007016000828254611b6c9190612f85565b925050819055506000609754609860009054906101000a900467ffffffffffffffff1667ffffffffffffffff1683611ba49190613151565b611bae91906131c2565b90508082611bbc9190612f85565b91508273ffffffffffffffffffffffffffffffffffffffff1663a9059cbb609860089054906101000a900473ffffffffffffffffffffffffffffffffffffffff16836040518363ffffffff1660e01b8152600401611c1b929190612ea0565b6020604051808303816000875af1158015611c3a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c5e9190612ef5565b508273ffffffffffffffffffffffffffffffffffffffff1663a9059cbb87846040518363ffffffff1660e01b8152600401611c9a929190612ea0565b6020604051808303816000875af1158015611cb9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611cdd9190612ef5565b508573ffffffffffffffffffffffffffffffffffffffff16877f98ece21e01a01cbe1d1c0dad3b053c8fbd368f99be78be958fcf1d1d13fd249a8a88604051611d2792919061349b565b60405180910390a360019350505050949350505050565b611d46611deb565b80606560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16611da66114dd565b73ffffffffffffffffffffffffffffffffffffffff167f38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e2270060405160405180910390a350565b611df3611efd565b73ffffffffffffffffffffffffffffffffffffffff16611e116114dd565b73ffffffffffffffffffffffffffffffffffffffff1614611e67576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e5e90613510565b60405180910390fd5b565b611e7161223a565b600060cd60006101000a81548160ff0219169083151502179055507f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa611eb5611efd565b604051611ec29190612a18565b60405180910390a1565b606560006101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055611efa81612283565b50565b600033905090565b611f0d610685565b15611f4d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f449061357c565b60405180910390fd5b565b6001609a60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414611fd1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fc8906135e8565b60405180910390fd5b60008403612014576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161200b90613654565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603612083576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161207a906136c0565b60405180910390fd5b600081146120fb57600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036120fa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120f19061372c565b60405180910390fd5b5b5050505050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b600060019054906101000a900460ff16612174576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161216b906137be565b60405180910390fd5b61217c612349565b565b600060019054906101000a900460ff166121cd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016121c4906137be565b60405180910390fd5b6121d56123aa565b565b6121df611f05565b600160cd60006101000a81548160ff0219169083151502179055507f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258612223611efd565b6040516122309190612a18565b60405180910390a1565b612242610685565b612281576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016122789061382a565b60405180910390fd5b565b6000603360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081603360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600060019054906101000a900460ff16612398576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161238f906137be565b60405180910390fd5b6123a86123a3611efd565b611ecc565b565b600060019054906101000a900460ff166123f9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016123f0906137be565b60405180910390fd5b600060cd60006101000a81548160ff021916908315150217905550565b604051806101400160405280600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff1681526020016000815260200160008152602001600015158152602001600015158152602001600073ffffffffffffffffffffffffffffffffffffffff16815260200160006bffffffffffffffffffffffff168152602001600081525090565b600080fd5b600080fd5b6000819050919050565b6124f0816124dd565b81146124fb57600080fd5b50565b60008135905061250d816124e7565b92915050565b600074ffffffffffffffffffffffffffffffffffffffffff82169050919050565b61253d81612513565b811461254857600080fd5b50565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006125768261254b565b9050919050565b60008135905061258c81612534565b6125958161256b565b905092915050565b600080604083850312156125b4576125b36124d3565b5b60006125c2858286016124fe565b92505060206125d38582860161257d565b9150509250929050565b600067ffffffffffffffff82169050919050565b6125fa816125dd565b811461260557600080fd5b50565b600081359050612617816125f1565b92915050565b600060208284031215612633576126326124d3565b5b600061264184828501612608565b91505092915050565b60008115159050919050565b61265f8161264a565b82525050565b600060208201905061267a6000830184612656565b92915050565b6000819050919050565b61269381612680565b811461269e57600080fd5b50565b6000813590506126b08161268a565b92915050565b600080604083850312156126cd576126cc6124d3565b5b60006126db858286016126a1565b92505060206126ec858286016124fe565b9150509250929050565b60006020828403121561270c5761270b6124d3565b5b600061271a8482850161257d565b91505092915050565b600060208284031215612739576127386124d3565b5b6000612747848285016124fe565b91505092915050565b6127598161256b565b82525050565b61276881612680565b82525050565b6127778161264a565b82525050565b60006bffffffffffffffffffffffff82169050919050565b61279e8161277d565b82525050565b610140820160008201516127bb6000850182612750565b5060208201516127ce6020850182612750565b5060408201516127e16040850182612750565b5060608201516127f4606085018261275f565b506080820151612807608085018261275f565b5060a082015161281a60a085018261276e565b5060c082015161282d60c085018261276e565b5060e082015161284060e0850182612750565b50610100820151612855610100850182612795565b5061012082015161286a61012085018261275f565b50505050565b60006101408201905061288660008301846127a4565b92915050565b6128958161277d565b81146128a057600080fd5b50565b6000813590506128b28161288c565b92915050565b600080fd5b600080fd5b600080fd5b60008083601f8401126128dd576128dc6128b8565b5b8235905067ffffffffffffffff8111156128fa576128f96128bd565b5b602083019150836001820283011115612916576129156128c2565b5b9250929050565b60008060008060008060008060e0898b03121561293d5761293c6124d3565b5b600061294b8b828c0161257d565b985050602061295c8b828c016126a1565b975050604061296d8b828c016128a3565b965050606061297e8b828c0161257d565b955050608061298f8b828c016126a1565b94505060a06129a08b828c0161257d565b93505060c089013567ffffffffffffffff8111156129c1576129c06124d8565b5b6129cd8b828c016128c7565b92509250509295985092959890939650565b6129e8816124dd565b82525050565b6000602082019050612a0360008301846129df565b92915050565b612a128161256b565b82525050565b6000602082019050612a2d6000830184612a09565b92915050565b612a3c816125dd565b82525050565b612a4b81612680565b82525050565b6000604082019050612a666000830185612a33565b612a736020830184612a42565b9392505050565b600080600060608486031215612a9357612a926124d3565b5b6000612aa1868287016124fe565b9350506020612ab28682870161257d565b9250506040612ac3868287016126a1565b9150509250925092565b60008060008060808587031215612ae757612ae66124d3565b5b6000612af5878288016124fe565b9450506020612b06878288016124fe565b9350506040612b178782880161257d565b9250506060612b2887828801612608565b91505092959194509250565b600082825260208201905092915050565b7f476174657761793a207a65726f20616464726573730000000000000000000000600082015250565b6000612b7b601583612b34565b9150612b8682612b45565b602082019050919050565b60006020820190508181036000830152612baa81612b6e565b9050919050565b7f476174657761793a207472656173757279206164647265737320616c7265616460008201527f7920736574000000000000000000000000000000000000000000000000000000602082015250565b6000612c0d602583612b34565b9150612c1882612bb1565b604082019050919050565b60006020820190508181036000830152612c3c81612c00565b9050919050565b7f476174657761793a2061676772656761746f72206164647265737320616c726560008201527f6164792073657400000000000000000000000000000000000000000000000000602082015250565b6000612c9f602783612b34565b9150612caa82612c43565b604082019050919050565b60006020820190508181036000830152612cce81612c92565b9050919050565b6000602082019050612cea6000830184612a33565b92915050565b7f4f6e6c7941676772656761746f72000000000000000000000000000000000000600082015250565b6000612d26600e83612b34565b9150612d3182612cf0565b602082019050919050565b60006020820190508181036000830152612d5581612d19565b9050919050565b7f4f7264657246756c66696c6c6564000000000000000000000000000000000000600082015250565b6000612d92600e83612b34565b9150612d9d82612d5c565b602082019050919050565b60006020820190508181036000830152612dc181612d85565b9050919050565b7f4f72646572526566756e64656400000000000000000000000000000000000000600082015250565b6000612dfe600d83612b34565b9150612e0982612dc8565b602082019050919050565b60006020820190508181036000830152612e2d81612df1565b9050919050565b7f4665654578636565647350726f746f636f6c4665650000000000000000000000600082015250565b6000612e6a601583612b34565b9150612e7582612e34565b602082019050919050565b60006020820190508181036000830152612e9981612e5d565b9050919050565b6000604082019050612eb56000830185612a09565b612ec26020830184612a42565b9392505050565b612ed28161264a565b8114612edd57600080fd5b50565b600081519050612eef81612ec9565b92915050565b600060208284031215612f0b57612f0a6124d3565b5b6000612f1984828501612ee0565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000612f5c82612680565b9150612f6783612680565b9250828201905080821115612f7f57612f7e612f22565b5b92915050565b6000612f9082612680565b9150612f9b83612680565b9250828203905081811115612fb357612fb2612f22565b5b92915050565b6000602082019050612fce6000830184612a42565b92915050565b7f4f776e61626c6532537465703a2063616c6c6572206973206e6f74207468652060008201527f6e6577206f776e65720000000000000000000000000000000000000000000000602082015250565b6000613030602983612b34565b915061303b82612fd4565b604082019050919050565b6000602082019050818103600083015261305f81613023565b9050919050565b7f496e76616c69644d657373616765486173680000000000000000000000000000600082015250565b600061309c601283612b34565b91506130a782613066565b602082019050919050565b600060208201905081810360008301526130cb8161308f565b9050919050565b60006060820190506130e76000830186612a09565b6130f46020830185612a09565b6131016040830184612a42565b949350505050565b600061311482612680565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361314657613145612f22565b5b600182019050919050565b600061315c82612680565b915061316783612680565b925082820261317581612680565b9150828204841483151761318c5761318b612f22565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b60006131cd82612680565b91506131d883612680565b9250826131e8576131e7613193565b5b828204905092915050565b6000819050919050565b600061321861321361320e8461277d565b6131f3565b612680565b9050919050565b613228816131fd565b82525050565b82818337600083830152505050565b6000601f19601f8301169050919050565b600061325a8385612b34565b935061326783858461322e565b6132708361323d565b840190509392505050565b60006080820190506132906000830188612a42565b61329d60208301876129df565b6132aa604083018661321f565b81810360608301526132bd81848661324e565b90509695505050505050565b7f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160008201527f647920696e697469616c697a6564000000000000000000000000000000000000602082015250565b6000613325602e83612b34565b9150613330826132c9565b604082019050919050565b6000602082019050818103600083015261335481613318565b9050919050565b6000819050919050565b600060ff82169050919050565b600061338d6133886133838461335b565b6131f3565b613365565b9050919050565b61339d81613372565b82525050565b60006020820190506133b86000830184613394565b92915050565b7f476174657761793a20696e76616c696420737461747573000000000000000000600082015250565b60006133f4601783612b34565b91506133ff826133be565b602082019050919050565b60006020820190508181036000830152613423816133e7565b9050919050565b60006134358261277d565b91506134408361277d565b925082820390506bffffffffffffffffffffffff81111561346457613463612f22565b5b92915050565b600061348561348061347b846125dd565b6131f3565b61277d565b9050919050565b6134958161346a565b82525050565b60006040820190506134b060008301856129df565b6134bd602083018461348c565b9392505050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b60006134fa602083612b34565b9150613505826134c4565b602082019050919050565b60006020820190508181036000830152613529816134ed565b9050919050565b7f5061757361626c653a2070617573656400000000000000000000000000000000600082015250565b6000613566601083612b34565b915061357182613530565b602082019050919050565b6000602082019050818103600083015261359581613559565b9050919050565b7f546f6b656e4e6f74537570706f72746564000000000000000000000000000000600082015250565b60006135d2601183612b34565b91506135dd8261359c565b602082019050919050565b60006020820190508181036000830152613601816135c5565b9050919050565b7f416d6f756e7449735a65726f0000000000000000000000000000000000000000600082015250565b600061363e600c83612b34565b915061364982613608565b602082019050919050565b6000602082019050818103600083015261366d81613631565b9050919050565b7f5468726f775a65726f4164647265737300000000000000000000000000000000600082015250565b60006136aa601083612b34565b91506136b582613674565b602082019050919050565b600060208201905081810360008301526136d98161369d565b9050919050565b7f496e76616c696453656e646572466565526563697069656e7400000000000000600082015250565b6000613716601983612b34565b9150613721826136e0565b602082019050919050565b6000602082019050818103600083015261374581613709565b9050919050565b7f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960008201527f6e697469616c697a696e67000000000000000000000000000000000000000000602082015250565b60006137a8602b83612b34565b91506137b38261374c565b604082019050919050565b600060208201905081810360008301526137d78161379b565b9050919050565b7f5061757361626c653a206e6f7420706175736564000000000000000000000000600082015250565b6000613814601483612b34565b915061381f826137de565b602082019050919050565b6000602082019050818103600083015261384381613807565b905091905056fea26474726f6e58221220081a009ba3e4ca96d8446d5f355740cbb5a0eb734de0a667fef6eb6fa696085264736f6c63430008120033", + "sourceMap": "390:6914:0:-:0;;;708:44;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;726:22;:20;;;:22;;:::i;:::-;390:6914;;5939:280:6;6007:13;;;;;;;;;;;6006:14;5998:66;;;;;;;;;;;;:::i;:::-;;;;;;;;;6094:15;6078:31;;:12;;;;;;;;;;:31;;;6074:139;;6140:15;6125:12;;:30;;;;;;;;;;;;;;;;;;6174:28;6186:15;6174:28;;;;;;:::i;:::-;;;;;;;;6074:139;5939:280::o;7:169:14:-;91:11;125:6;120:3;113:19;165:4;160:3;156:14;141:29;;7:169;;;;:::o;182:226::-;322:34;318:1;310:6;306:14;299:58;391:9;386:2;378:6;374:15;367:34;182:226;:::o;414:366::-;556:3;577:67;641:2;636:3;577:67;:::i;:::-;570:74;;653:93;742:3;653:93;:::i;:::-;771:2;766:3;762:12;755:19;;414:366;;;:::o;786:419::-;952:4;990:2;979:9;975:18;967:26;;1039:9;1033:4;1029:20;1025:1;1014:9;1010:17;1003:47;1067:131;1193:4;1067:131;:::i;:::-;1059:139;;786:419;;;:::o;1211:86::-;1246:7;1286:4;1279:5;1275:16;1264:27;;1211:86;;;:::o;1303:112::-;1386:22;1402:5;1386:22;:::i;:::-;1381:3;1374:35;1303:112;;:::o;1421:214::-;1510:4;1548:2;1537:9;1533:18;1525:26;;1561:67;1625:1;1614:9;1610:17;1601:6;1561:67;:::i;:::-;1421:214;;;;:::o;390:6914:0:-;;;;;;;", + "deployedSourceMap": "390:6914:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1421:56;;;:::i;:::-;;2293:551:1;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1894:170;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1879:84:7;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2085:101:5;;;:::i;:::-;;5690:926:0;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7005:142;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6849:107;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2031:212:4;;;:::i;:::-;;1709:1331:0;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;795:114;;;:::i;:::-;;1325:52;;;:::i;:::-;;1462:85:5;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7193:109:0;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;1426:335:1;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1144:99:4;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4097:1554:0;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1436:178:4;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1421:56:0;1355:13:5;:11;:13::i;:::-;1463:10:0::1;:8;:10::i;:::-;1421:56::o:0;2293:551:1:-;1355:13:5;:11;:13::i;:::-;2401:1:1::1;2384:19;;:5;:19;;::::0;2376:53:::1;;;;;;;;;;;;:::i;:::-;;;;;;;;;2433:12;2453:18;:4;:18:::0;2449:326:::1;;2505:5;2486:24;;:15;;;;;;;;;;;:24;;::::0;2478:74:::1;;;;;;;;;;;;:::i;:::-;;;;;;;;;2575:5;2557:15;;:23;;;;;;;;;;;;;;;;;;2595:4;2585:14;;2449:326;;;2614:20;:4;:20:::0;2610:165:::1;;2671:5;2649:27;;:18;;;;;;;;;;;:27;;::::0;2641:79:::1;;;;;;;;;;;;:::i;:::-;;;;;;;;;2746:5;2725:18;;:26;;;;;;;;;;;;;;;;;;2766:4;2756:14;;2610:165;2449:326;2782:7;2778:63;;;2830:5;2801:35;;2824:4;2801:35;;;;;;;;;;2778:63;2372:472;2293:551:::0;;:::o;1894:170::-;1355:13:5;:11;:13::i;:::-;1993:19:1::1;1972:18;;:40;;;;;;;;;;;;;;;;;;2021:39;2040:19;2021:39;;;;;;:::i;:::-;;;;;;;;1894:170:::0;:::o;1879:84:7:-;1926:4;1949:7;;;;;;;;;;;1942:14;;1879:84;:::o;2085:101:5:-;1355:13;:11;:13::i;:::-;2149:30:::1;2176:1;2149:18;:30::i;:::-;2085:101::o:0;5690:926:0:-;5771:4;1044:18;;;;;;;;;;;1030:32;;:10;:32;;;1022:59;;;;;;;;;;;;:::i;:::-;;;;;;;;;5841:5:::1;:15;5847:8;5841:15;;;;;;;;;;;:27;;;;;;;;;;;;5840:28;5832:55;;;;;;;;;;;;:::i;:::-;;;;;;;;;5900:5;:15;5906:8;5900:15;;;;;;;;;;;:26;;;;;;;;;;;;5899:27;5891:53;;;;;;;;;;;;:::i;:::-;;;;;;;;;5987:4;5956:5;:15;5962:8;5956:15;;;;;;;;;;;:27;;;:35;;5948:69;;;;;;;;;;;;:::i;:::-;;;;;;;;;6070:5;:15;6076:8;6070:15;;;;;;;;;;;:21;;;;;;;;;;;;6063:38;;;6102:15;;;;;;;;;;;6119:4;6063:61;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;6182:4;6153:5;:15;6159:8;6153:15;;;;;;;;;;;:26;;;:33;;;;;;;;;;;;;;;;;;6219:1;6190:5;:15;6196:8;6190:15;;;;;;;;;;;:26;;;:30;;;;;;;;;;;;;;;;;;6259:20;6337:4;6307:5;:15;6313:8;6307:15;;;;;;;;;;;:27;;;6282:5;:15;6288:8;6282:15;;;;;;;;;;;:22;;;:52;;;;:::i;:::-;:59;;;;:::i;:::-;6259:82;;6418:5;:15;6424:8;6418:15;;;;;;;;;;;:21;;;;;;;;;;;;6411:38;;;6454:5;:15;6460:8;6454:15;;;;;;;;;;;:29;;;;;;;;;;;;6503:5;:15;6509:8;6503:15;;;;;;;;;;;:25;;;6488:12;:40;;;;:::i;:::-;6411:121;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;6587:8;6567:29;6581:4;6567:29;;;;;;:::i;:::-;;;;;;;;6608:4;6601:11;;;5690:926:::0;;;;:::o;7005:142::-;7070:4;7113:1;7084:17;:25;7102:6;7084:25;;;;;;;;;;;;;;;;:30;7080:47;;7123:4;7116:11;;;;7080:47;7138:5;7131:12;;7005:142;;;;:::o;6849:107::-;6912:12;;:::i;:::-;6937:5;:15;6943:8;6937:15;;;;;;;;;;;6930:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6849:107;;;:::o;2031:212:4:-;2083:14;2100:12;:10;:12::i;:::-;2083:29;;2148:6;2130:24;;:14;:12;:14::i;:::-;:24;;;2122:78;;;;;;;;;;;;:::i;:::-;;;;;;;;;2210:26;2229:6;2210:18;:26::i;:::-;2073:170;2031:212::o;1709:1331:0:-;1928:15;1503:19:7;:17;:19::i;:::-;1979:74:0::1;1988:6;1996:7;2005:14;2021:19;2042:10;1979:8;:74::i;:::-;2121:1;2098:11;;2092:25;;:30:::0;2084:61:::1;;;;;;;;;;;;:::i;:::-;;;;;;;;;2205:6;2198:27;;;2226:10;2246:4;2263:10;2253:7;:20;;;;:::i;:::-;2198:76;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;2329:6;:18;2336:10;2329:18;;;;;;;;;;;;;;;;:20;;;;;;;;;:::i;:::-;;;;;;2434:10;2446:6;:18;2453:10;2446:18;;;;;;;;;;;;;;;;2423:42;;;;;;;;;:::i;:::-;;;;;;;;;;;;;2413:53;;;;;;2403:63;;2495:20;2551:7;;2529:18;;;;;;;;;;;2519:28;;:7;:28;;;;:::i;:::-;2518:40;;;;:::i;:::-;2495:63;;2579:283;;;;;;;;2598:10;2579:283;;;;;;2620:6;2579:283;;;;;;2651:19;2579:283;;;;;;2686:10;2579:283;;;;2714:12;2579:283;;;;2744:5;2579:283;;;;;;2766:5;2579:283;;;;;;2791:14;2579:283;;;;;;2829:7;;2579:283;;;;;;;;2850:7;2579:283;;::::0;2562:5:::1;:14;2568:7;2562:14;;;;;;;;;;;:300;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2956:5;:14;2962:7;2956:14;;;;;;;;;;;:21;;;2945:6;2902:134;;2919:5;:14;2925:7;2919:14;;;;;;;;;;;:21;;;;;;;;;;;;2902:134;;;2982:12;2999:7;3011:5;3021:11;;2902:134;;;;;;;;;;:::i;:::-;;;;;;;;1945:1095;1709:1331:::0;;;;;;;;;;:::o;795:114::-;3279:19:6;3302:13;;;;;;;;;;;3301:14;3279:36;;3347:14;:34;;;;;3380:1;3365:12;;;;;;;;;;:16;;;3347:34;3346:108;;;;3388:44;3426:4;3388:29;:44::i;:::-;3387:45;:66;;;;;3452:1;3436:12;;;;;;;;;;:17;;;3387:66;3346:108;3325:201;;;;;;;;;;;;:::i;:::-;;;;;;;;;3551:1;3536:12;;:16;;;;;;;;;;;;;;;;;;3566:14;3562:65;;;3612:4;3596:13;;:20;;;;;;;;;;;;;;;;;;3562:65;852:7:0::1;842;:17;;;;863:21;:19;:21::i;:::-;888:17;:15;:17::i;:::-;3651:14:6::0;3647:99;;;3697:5;3681:13;;:21;;;;;;;;;;;;;;;;;;3721:14;3733:1;3721:14;;;;;;:::i;:::-;;;;;;;;3647:99;3269:483;795:114:0:o;1325:52::-;1355:13:5;:11;:13::i;:::-;1365:8:0::1;:6;:8::i;:::-;1325:52::o:0;1462:85:5:-;1508:7;1534:6;;;;;;;;;;;1527:13;;1462:85;:::o;7193:109:0:-;7241:6;7249:7;7270:18;;;;;;;;;;;7290:7;;7262:36;;;;7193:109;;:::o;1426:335:1:-;1355:13:5;:11;:13::i;:::-;1547:1:1::1;1530:19;;:5;:19;;::::0;1522:53:::1;;;;;;;;;;;;:::i;:::-;;;;;;;;;1597:1;1587:6;:11;:26;;;;1612:1;1602:6;:11;1587:26;1579:62;;;;;;;;;;;;:::i;:::-;;;;;;;;;1649:15;:4;:15:::0;1645:113:::1;;1698:6;1671:17;:24;1689:5;1671:24;;;;;;;;;;;;;;;:33;;;;1739:5;1714:39;;1733:4;1714:39;1746:6;1714:39;;;;;;:::i;:::-;;;;;;;;1645:113;1426:335:::0;;;:::o;1144:99:4:-;1197:7;1223:13;;;;;;;;;;;1216:20;;1144:99;:::o;4097:1554:0:-;4249:4;1044:18;;;;;;;;;;;1030:32;;:10;:32;;;1022:59;;;;;;;;;;;;:::i;:::-;;;;;;;;;4319:5:::1;:15;4325:8;4319:15;;;;;;;;;;;:27;;;;;;;;;;;;4318:28;4310:55;;;;;;;;;;;;:::i;:::-;;;;;;;;;4378:5;:15;4384:8;4378:15;;;;;;;;;;;:26;;;;;;;;;;;;4377:27;4369:53;;;;;;;;;;;;:::i;:::-;;;;;;;;;4459:13;4475:5;:15;4481:8;4475:15;;;;;;;;;;;:21;;;;;;;;;;;;4459:37;;4593:14;4563:44;;:5;:15;4569:8;4563:15;;;;;;;;;;;:26;;;:44;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;4646:1;4616:5;:15;4622:8;4616:15;;;;;;;;;;;:26;;;;;;;;;;;;:31;;::::0;4612:453:::1;;4729:4;4699:5;:15;4705:8;4699:15;;;;;;;;;;;:27;;;:34;;;;;;;;;;;;;;;;;;4772:1;4743:5;:15;4749:8;4743:15;;;;;;;;;;;:25;;;:30;4739:321;;4815:5;:15;4821:8;4815:15;;;;;;;;;;;:21;;;;;;;;;;;;4808:38;;;4853:5;:15;4859:8;4853:15;;;;;;;;;;;:34;;;;;;;;;;;;4894:5;:15;4900:8;4894:15;;;;;;;;;;;:25;;;4808:117;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;5023:5;:15;5029:8;5023:15;;;;;;;;;;;:25;;;4982:5;:15;4988:8;4982:15;;;;;;;;;;;:34;;;;;;;;;;;;4955:99;;;;;;;;;;;;4739:321;4612:453;5105:31;5183:7;;5165:14;5140:39;;:5;:15;5146:8;5140:15;;;;;;;;;;;:22;;;:39;;;;:::i;:::-;5139:51;;;;:::i;:::-;5105:85;;5220:23;5194:5;:15;5200:8;5194:15;;;;;;;;;;;:22;;;:49;;;;;;;:::i;:::-;;;;;;;;5248:19;5319:7;;5297:18;;;;;;;;;;;5271:44;;:23;:44;;;;:::i;:::-;5270:56;;;;:::i;:::-;5248:78;;5357:11;5330:38;;;;;:::i;:::-;;;5407:5;5400:22;;;5423:15;;;;;;;;;;;5440:11;5400:52;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;5464:5;5457:22;;;5480:18;5500:23;5457:67;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;5596:18;5558:73;;5586:8;5558:73;5571:13;5616:14;5558:73;;;;;;;:::i;:::-;;;;;;;;5643:4;5636:11;;;;;4097:1554:::0;;;;;;:::o;1436:178:4:-;1355:13:5;:11;:13::i;:::-;1541:8:4::1;1525:13;;:24;;;;;;;;;;;;;;;;;;1598:8;1564:43;;1589:7;:5;:7::i;:::-;1564:43;;;;;;;;;;;;1436:178:::0;:::o;1620:130:5:-;1694:12;:10;:12::i;:::-;1683:23;;:7;:5;:7::i;:::-;:23;;;1675:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;1620:130::o;2697:117:7:-;1750:16;:14;:16::i;:::-;2765:5:::1;2755:7;;:15;;;;;;;;;;;;;;;;;;2785:22;2794:12;:10;:12::i;:::-;2785:22;;;;;;:::i;:::-;;;;;;;;2697:117::o:0;1798:153:4:-;1887:13;;1880:20;;;;;;;;;;;1910:34;1935:8;1910:24;:34::i;:::-;1798:153;:::o;886:96:9:-;939:7;965:10;958:17;;886:96;:::o;2031:106:7:-;2101:8;:6;:8::i;:::-;2100:9;2092:38;;;;;;;;;;;;:::i;:::-;;;;;;;;;2031:106::o;3433:427:0:-;3625:1;3596:17;:25;3614:6;3596:25;;;;;;;;;;;;;;;;:30;3588:60;;;;;;;;;;;;:::i;:::-;;;;;;;;;3671:1;3660:7;:12;3652:37;;;;;;;;;;;;:::i;:::-;;;;;;;;;3727:1;3701:28;;:14;:28;;;3693:57;;;;;;;;;;;;:::i;:::-;;;;;;;;;3773:1;3759:10;:15;3755:102;;3820:1;3789:33;;:19;:33;;;3781:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;3755:102;3433:427;;;;;:::o;1423:320:8:-;1483:4;1735:1;1713:7;:19;;;:23;1706:30;;1423:320;;;:::o;889:100:4:-;5374:13:6;;;;;;;;;;;5366:69;;;;;;;;;;;;:::i;:::-;;;;;;;;;956:26:4::1;:24;:26::i;:::-;889:100::o:0;1084:97:7:-;5374:13:6;;;;;;;;;;;5366:69;;;;;;;;;;;;:::i;:::-;;;;;;;;;1147:27:7::1;:25;:27::i;:::-;1084:97::o:0;2450:115::-;1503:19;:17;:19::i;:::-;2519:4:::1;2509:7;;:14;;;;;;;;;;;;;;;;;;2538:20;2545:12;:10;:12::i;:::-;2538:20;;;;;;:::i;:::-;;;;;;;;2450:115::o:0;2209:106::-;2275:8;:6;:8::i;:::-;2267:41;;;;;;;;;;;;:::i;:::-;;;;;;;;;2209:106::o;2687:187:5:-;2760:16;2779:6;;;;;;;;;;;2760:25;;2804:8;2795:6;;:17;;;;;;;;;;;;;;;;;;2858:8;2827:40;;2848:8;2827:40;;;;;;;;;;;;2750:124;2687:187;:::o;1125:111::-;5374:13:6;;;;;;;;;;;5366:69;;;;;;;;;;;;:::i;:::-;;;;;;;;;1197:32:5::1;1216:12;:10;:12::i;:::-;1197:18;:32::i;:::-;1125:111::o:0;1187:95:7:-;5374:13:6;;;;;;;;;;;5366:69;;;;;;;;;;;;:::i;:::-;;;;;;;;;1270:5:7::1;1260:7;;:15;;;;;;;;;;;;;;;;;;1187:95::o:0;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;88:117:14:-;197:1;194;187:12;211:117;320:1;317;310:12;334:77;371:7;400:5;389:16;;334:77;;;:::o;417:122::-;490:24;508:5;490:24;:::i;:::-;483:5;480:35;470:63;;529:1;526;519:12;470:63;417:122;:::o;545:139::-;591:5;629:6;616:20;607:29;;645:33;672:5;645:33;:::i;:::-;545:139;;;;:::o;690:128::-;727:7;767:44;760:5;756:56;745:67;;690:128;;;:::o;824:122::-;897:24;915:5;897:24;:::i;:::-;890:5;887:35;877:63;;936:1;933;926:12;877:63;824:122;:::o;952:126::-;989:7;1029:42;1022:5;1018:54;1007:65;;952:126;;;:::o;1084:96::-;1121:7;1150:24;1168:5;1150:24;:::i;:::-;1139:35;;1084:96;;;:::o;1186:181::-;1232:5;1270:6;1257:20;1248:29;;1286:33;1313:5;1286:33;:::i;:::-;1337:24;1355:5;1337:24;:::i;:::-;1328:33;;1186:181;;;;:::o;1373:474::-;1441:6;1449;1498:2;1486:9;1477:7;1473:23;1469:32;1466:119;;;1504:79;;:::i;:::-;1466:119;1624:1;1649:53;1694:7;1685:6;1674:9;1670:22;1649:53;:::i;:::-;1639:63;;1595:117;1751:2;1777:53;1822:7;1813:6;1802:9;1798:22;1777:53;:::i;:::-;1767:63;;1722:118;1373:474;;;;;:::o;1853:101::-;1889:7;1929:18;1922:5;1918:30;1907:41;;1853:101;;;:::o;1960:120::-;2032:23;2049:5;2032:23;:::i;:::-;2025:5;2022:34;2012:62;;2070:1;2067;2060:12;2012:62;1960:120;:::o;2086:137::-;2131:5;2169:6;2156:20;2147:29;;2185:32;2211:5;2185:32;:::i;:::-;2086:137;;;;:::o;2229:327::-;2287:6;2336:2;2324:9;2315:7;2311:23;2307:32;2304:119;;;2342:79;;:::i;:::-;2304:119;2462:1;2487:52;2531:7;2522:6;2511:9;2507:22;2487:52;:::i;:::-;2477:62;;2433:116;2229:327;;;;:::o;2562:90::-;2596:7;2639:5;2632:13;2625:21;2614:32;;2562:90;;;:::o;2658:109::-;2739:21;2754:5;2739:21;:::i;:::-;2734:3;2727:34;2658:109;;:::o;2773:210::-;2860:4;2898:2;2887:9;2883:18;2875:26;;2911:65;2973:1;2962:9;2958:17;2949:6;2911:65;:::i;:::-;2773:210;;;;:::o;2989:77::-;3026:7;3055:5;3044:16;;2989:77;;;:::o;3072:122::-;3145:24;3163:5;3145:24;:::i;:::-;3138:5;3135:35;3125:63;;3184:1;3181;3174:12;3125:63;3072:122;:::o;3200:139::-;3246:5;3284:6;3271:20;3262:29;;3300:33;3327:5;3300:33;:::i;:::-;3200:139;;;;:::o;3345:474::-;3413:6;3421;3470:2;3458:9;3449:7;3445:23;3441:32;3438:119;;;3476:79;;:::i;:::-;3438:119;3596:1;3621:53;3666:7;3657:6;3646:9;3642:22;3621:53;:::i;:::-;3611:63;;3567:117;3723:2;3749:53;3794:7;3785:6;3774:9;3770:22;3749:53;:::i;:::-;3739:63;;3694:118;3345:474;;;;;:::o;3825:329::-;3884:6;3933:2;3921:9;3912:7;3908:23;3904:32;3901:119;;;3939:79;;:::i;:::-;3901:119;4059:1;4084:53;4129:7;4120:6;4109:9;4105:22;4084:53;:::i;:::-;4074:63;;4030:117;3825:329;;;;:::o;4160:::-;4219:6;4268:2;4256:9;4247:7;4243:23;4239:32;4236:119;;;4274:79;;:::i;:::-;4236:119;4394:1;4419:53;4464:7;4455:6;4444:9;4440:22;4419:53;:::i;:::-;4409:63;;4365:117;4160:329;;;;:::o;4495:108::-;4572:24;4590:5;4572:24;:::i;:::-;4567:3;4560:37;4495:108;;:::o;4609:::-;4686:24;4704:5;4686:24;:::i;:::-;4681:3;4674:37;4609:108;;:::o;4723:99::-;4794:21;4809:5;4794:21;:::i;:::-;4789:3;4782:34;4723:99;;:::o;4828:109::-;4864:7;4904:26;4897:5;4893:38;4882:49;;4828:109;;;:::o;4943:105::-;5018:23;5035:5;5018:23;:::i;:::-;5013:3;5006:36;4943:105;;:::o;5108:1948::-;5249:6;5244:3;5240:16;5340:4;5333:5;5329:16;5323:23;5359:63;5416:4;5411:3;5407:14;5393:12;5359:63;:::i;:::-;5266:166;5515:4;5508:5;5504:16;5498:23;5534:63;5591:4;5586:3;5582:14;5568:12;5534:63;:::i;:::-;5442:165;5703:4;5696:5;5692:16;5686:23;5722:63;5779:4;5774:3;5770:14;5756:12;5722:63;:::i;:::-;5617:178;5882:4;5875:5;5871:16;5865:23;5901:63;5958:4;5953:3;5949:14;5935:12;5901:63;:::i;:::-;5805:169;6063:4;6056:5;6052:16;6046:23;6082:63;6139:4;6134:3;6130:14;6116:12;6082:63;:::i;:::-;5984:171;6244:4;6237:5;6233:16;6227:23;6263:57;6314:4;6309:3;6305:14;6291:12;6263:57;:::i;:::-;6165:165;6418:4;6411:5;6407:16;6401:23;6437:57;6488:4;6483:3;6479:14;6465:12;6437:57;:::i;:::-;6340:164;6595:4;6588:5;6584:16;6578:23;6614:63;6671:4;6666:3;6662:14;6648:12;6614:63;:::i;:::-;6514:173;6775:6;6768:5;6764:18;6758:25;6796:63;6851:6;6846:3;6842:16;6828:12;6796:63;:::i;:::-;6697:172;6953:6;6946:5;6942:18;6936:25;6974:65;7031:6;7026:3;7022:16;7008:12;6974:65;:::i;:::-;6879:170;5218:1838;5108:1948;;:::o;7062:311::-;7199:4;7237:3;7226:9;7222:19;7214:27;;7251:115;7363:1;7352:9;7348:17;7339:6;7251:115;:::i;:::-;7062:311;;;;:::o;7379:120::-;7451:23;7468:5;7451:23;:::i;:::-;7444:5;7441:34;7431:62;;7489:1;7486;7479:12;7431:62;7379:120;:::o;7505:137::-;7550:5;7588:6;7575:20;7566:29;;7604:32;7630:5;7604:32;:::i;:::-;7505:137;;;;:::o;7648:117::-;7757:1;7754;7747:12;7771:117;7880:1;7877;7870:12;7894:117;8003:1;8000;7993:12;8031:553;8089:8;8099:6;8149:3;8142:4;8134:6;8130:17;8126:27;8116:122;;8157:79;;:::i;:::-;8116:122;8270:6;8257:20;8247:30;;8300:18;8292:6;8289:30;8286:117;;;8322:79;;:::i;:::-;8286:117;8436:4;8428:6;8424:17;8412:29;;8490:3;8482:4;8474:6;8470:17;8460:8;8456:32;8453:41;8450:128;;;8497:79;;:::i;:::-;8450:128;8031:553;;;;;:::o;8590:1401::-;8714:6;8722;8730;8738;8746;8754;8762;8770;8819:3;8807:9;8798:7;8794:23;8790:33;8787:120;;;8826:79;;:::i;:::-;8787:120;8946:1;8971:53;9016:7;9007:6;8996:9;8992:22;8971:53;:::i;:::-;8961:63;;8917:117;9073:2;9099:53;9144:7;9135:6;9124:9;9120:22;9099:53;:::i;:::-;9089:63;;9044:118;9201:2;9227:52;9271:7;9262:6;9251:9;9247:22;9227:52;:::i;:::-;9217:62;;9172:117;9328:2;9354:53;9399:7;9390:6;9379:9;9375:22;9354:53;:::i;:::-;9344:63;;9299:118;9456:3;9483:53;9528:7;9519:6;9508:9;9504:22;9483:53;:::i;:::-;9473:63;;9427:119;9585:3;9612:53;9657:7;9648:6;9637:9;9633:22;9612:53;:::i;:::-;9602:63;;9556:119;9742:3;9731:9;9727:19;9714:33;9774:18;9766:6;9763:30;9760:117;;;9796:79;;:::i;:::-;9760:117;9909:65;9966:7;9957:6;9946:9;9942:22;9909:65;:::i;:::-;9891:83;;;;9685:299;8590:1401;;;;;;;;;;;:::o;9997:118::-;10084:24;10102:5;10084:24;:::i;:::-;10079:3;10072:37;9997:118;;:::o;10121:222::-;10214:4;10252:2;10241:9;10237:18;10229:26;;10265:71;10333:1;10322:9;10318:17;10309:6;10265:71;:::i;:::-;10121:222;;;;:::o;10349:118::-;10436:24;10454:5;10436:24;:::i;:::-;10431:3;10424:37;10349:118;;:::o;10473:222::-;10566:4;10604:2;10593:9;10589:18;10581:26;;10617:71;10685:1;10674:9;10670:17;10661:6;10617:71;:::i;:::-;10473:222;;;;:::o;10701:115::-;10786:23;10803:5;10786:23;:::i;:::-;10781:3;10774:36;10701:115;;:::o;10822:118::-;10909:24;10927:5;10909:24;:::i;:::-;10904:3;10897:37;10822:118;;:::o;10946:328::-;11065:4;11103:2;11092:9;11088:18;11080:26;;11116:69;11182:1;11171:9;11167:17;11158:6;11116:69;:::i;:::-;11195:72;11263:2;11252:9;11248:18;11239:6;11195:72;:::i;:::-;10946:328;;;;;:::o;11280:619::-;11357:6;11365;11373;11422:2;11410:9;11401:7;11397:23;11393:32;11390:119;;;11428:79;;:::i;:::-;11390:119;11548:1;11573:53;11618:7;11609:6;11598:9;11594:22;11573:53;:::i;:::-;11563:63;;11519:117;11675:2;11701:53;11746:7;11737:6;11726:9;11722:22;11701:53;:::i;:::-;11691:63;;11646:118;11803:2;11829:53;11874:7;11865:6;11854:9;11850:22;11829:53;:::i;:::-;11819:63;;11774:118;11280:619;;;;;:::o;11905:763::-;11990:6;11998;12006;12014;12063:3;12051:9;12042:7;12038:23;12034:33;12031:120;;;12070:79;;:::i;:::-;12031:120;12190:1;12215:53;12260:7;12251:6;12240:9;12236:22;12215:53;:::i;:::-;12205:63;;12161:117;12317:2;12343:53;12388:7;12379:6;12368:9;12364:22;12343:53;:::i;:::-;12333:63;;12288:118;12445:2;12471:53;12516:7;12507:6;12496:9;12492:22;12471:53;:::i;:::-;12461:63;;12416:118;12573:2;12599:52;12643:7;12634:6;12623:9;12619:22;12599:52;:::i;:::-;12589:62;;12544:117;11905:763;;;;;;;:::o;12674:169::-;12758:11;12792:6;12787:3;12780:19;12832:4;12827:3;12823:14;12808:29;;12674:169;;;;:::o;12849:171::-;12989:23;12985:1;12977:6;12973:14;12966:47;12849:171;:::o;13026:366::-;13168:3;13189:67;13253:2;13248:3;13189:67;:::i;:::-;13182:74;;13265:93;13354:3;13265:93;:::i;:::-;13383:2;13378:3;13374:12;13367:19;;13026:366;;;:::o;13398:419::-;13564:4;13602:2;13591:9;13587:18;13579:26;;13651:9;13645:4;13641:20;13637:1;13626:9;13622:17;13615:47;13679:131;13805:4;13679:131;:::i;:::-;13671:139;;13398:419;;;:::o;13823:224::-;13963:34;13959:1;13951:6;13947:14;13940:58;14032:7;14027:2;14019:6;14015:15;14008:32;13823:224;:::o;14053:366::-;14195:3;14216:67;14280:2;14275:3;14216:67;:::i;:::-;14209:74;;14292:93;14381:3;14292:93;:::i;:::-;14410:2;14405:3;14401:12;14394:19;;14053:366;;;:::o;14425:419::-;14591:4;14629:2;14618:9;14614:18;14606:26;;14678:9;14672:4;14668:20;14664:1;14653:9;14649:17;14642:47;14706:131;14832:4;14706:131;:::i;:::-;14698:139;;14425:419;;;:::o;14850:226::-;14990:34;14986:1;14978:6;14974:14;14967:58;15059:9;15054:2;15046:6;15042:15;15035:34;14850:226;:::o;15082:366::-;15224:3;15245:67;15309:2;15304:3;15245:67;:::i;:::-;15238:74;;15321:93;15410:3;15321:93;:::i;:::-;15439:2;15434:3;15430:12;15423:19;;15082:366;;;:::o;15454:419::-;15620:4;15658:2;15647:9;15643:18;15635:26;;15707:9;15701:4;15697:20;15693:1;15682:9;15678:17;15671:47;15735:131;15861:4;15735:131;:::i;:::-;15727:139;;15454:419;;;:::o;15879:218::-;15970:4;16008:2;15997:9;15993:18;15985:26;;16021:69;16087:1;16076:9;16072:17;16063:6;16021:69;:::i;:::-;15879:218;;;;:::o;16103:164::-;16243:16;16239:1;16231:6;16227:14;16220:40;16103:164;:::o;16273:366::-;16415:3;16436:67;16500:2;16495:3;16436:67;:::i;:::-;16429:74;;16512:93;16601:3;16512:93;:::i;:::-;16630:2;16625:3;16621:12;16614:19;;16273:366;;;:::o;16645:419::-;16811:4;16849:2;16838:9;16834:18;16826:26;;16898:9;16892:4;16888:20;16884:1;16873:9;16869:17;16862:47;16926:131;17052:4;16926:131;:::i;:::-;16918:139;;16645:419;;;:::o;17070:164::-;17210:16;17206:1;17198:6;17194:14;17187:40;17070:164;:::o;17240:366::-;17382:3;17403:67;17467:2;17462:3;17403:67;:::i;:::-;17396:74;;17479:93;17568:3;17479:93;:::i;:::-;17597:2;17592:3;17588:12;17581:19;;17240:366;;;:::o;17612:419::-;17778:4;17816:2;17805:9;17801:18;17793:26;;17865:9;17859:4;17855:20;17851:1;17840:9;17836:17;17829:47;17893:131;18019:4;17893:131;:::i;:::-;17885:139;;17612:419;;;:::o;18037:163::-;18177:15;18173:1;18165:6;18161:14;18154:39;18037:163;:::o;18206:366::-;18348:3;18369:67;18433:2;18428:3;18369:67;:::i;:::-;18362:74;;18445:93;18534:3;18445:93;:::i;:::-;18563:2;18558:3;18554:12;18547:19;;18206:366;;;:::o;18578:419::-;18744:4;18782:2;18771:9;18767:18;18759:26;;18831:9;18825:4;18821:20;18817:1;18806:9;18802:17;18795:47;18859:131;18985:4;18859:131;:::i;:::-;18851:139;;18578:419;;;:::o;19003:171::-;19143:23;19139:1;19131:6;19127:14;19120:47;19003:171;:::o;19180:366::-;19322:3;19343:67;19407:2;19402:3;19343:67;:::i;:::-;19336:74;;19419:93;19508:3;19419:93;:::i;:::-;19537:2;19532:3;19528:12;19521:19;;19180:366;;;:::o;19552:419::-;19718:4;19756:2;19745:9;19741:18;19733:26;;19805:9;19799:4;19795:20;19791:1;19780:9;19776:17;19769:47;19833:131;19959:4;19833:131;:::i;:::-;19825:139;;19552:419;;;:::o;19977:332::-;20098:4;20136:2;20125:9;20121:18;20113:26;;20149:71;20217:1;20206:9;20202:17;20193:6;20149:71;:::i;:::-;20230:72;20298:2;20287:9;20283:18;20274:6;20230:72;:::i;:::-;19977:332;;;;;:::o;20315:116::-;20385:21;20400:5;20385:21;:::i;:::-;20378:5;20375:32;20365:60;;20421:1;20418;20411:12;20365:60;20315:116;:::o;20437:137::-;20491:5;20522:6;20516:13;20507:22;;20538:30;20562:5;20538:30;:::i;:::-;20437:137;;;;:::o;20580:345::-;20647:6;20696:2;20684:9;20675:7;20671:23;20667:32;20664:119;;;20702:79;;:::i;:::-;20664:119;20822:1;20847:61;20900:7;20891:6;20880:9;20876:22;20847:61;:::i;:::-;20837:71;;20793:125;20580:345;;;;:::o;20931:180::-;20979:77;20976:1;20969:88;21076:4;21073:1;21066:15;21100:4;21097:1;21090:15;21117:191;21157:3;21176:20;21194:1;21176:20;:::i;:::-;21171:25;;21210:20;21228:1;21210:20;:::i;:::-;21205:25;;21253:1;21250;21246:9;21239:16;;21274:3;21271:1;21268:10;21265:36;;;21281:18;;:::i;:::-;21265:36;21117:191;;;;:::o;21314:194::-;21354:4;21374:20;21392:1;21374:20;:::i;:::-;21369:25;;21408:20;21426:1;21408:20;:::i;:::-;21403:25;;21452:1;21449;21445:9;21437:17;;21476:1;21470:4;21467:11;21464:37;;;21481:18;;:::i;:::-;21464:37;21314:194;;;;:::o;21514:222::-;21607:4;21645:2;21634:9;21630:18;21622:26;;21658:71;21726:1;21715:9;21711:17;21702:6;21658:71;:::i;:::-;21514:222;;;;:::o;21742:228::-;21882:34;21878:1;21870:6;21866:14;21859:58;21951:11;21946:2;21938:6;21934:15;21927:36;21742:228;:::o;21976:366::-;22118:3;22139:67;22203:2;22198:3;22139:67;:::i;:::-;22132:74;;22215:93;22304:3;22215:93;:::i;:::-;22333:2;22328:3;22324:12;22317:19;;21976:366;;;:::o;22348:419::-;22514:4;22552:2;22541:9;22537:18;22529:26;;22601:9;22595:4;22591:20;22587:1;22576:9;22572:17;22565:47;22629:131;22755:4;22629:131;:::i;:::-;22621:139;;22348:419;;;:::o;22773:168::-;22913:20;22909:1;22901:6;22897:14;22890:44;22773:168;:::o;22947:366::-;23089:3;23110:67;23174:2;23169:3;23110:67;:::i;:::-;23103:74;;23186:93;23275:3;23186:93;:::i;:::-;23304:2;23299:3;23295:12;23288:19;;22947:366;;;:::o;23319:419::-;23485:4;23523:2;23512:9;23508:18;23500:26;;23572:9;23566:4;23562:20;23558:1;23547:9;23543:17;23536:47;23600:131;23726:4;23600:131;:::i;:::-;23592:139;;23319:419;;;:::o;23744:442::-;23893:4;23931:2;23920:9;23916:18;23908:26;;23944:71;24012:1;24001:9;23997:17;23988:6;23944:71;:::i;:::-;24025:72;24093:2;24082:9;24078:18;24069:6;24025:72;:::i;:::-;24107;24175:2;24164:9;24160:18;24151:6;24107:72;:::i;:::-;23744:442;;;;;;:::o;24192:233::-;24231:3;24254:24;24272:5;24254:24;:::i;:::-;24245:33;;24300:66;24293:5;24290:77;24287:103;;24370:18;;:::i;:::-;24287:103;24417:1;24410:5;24406:13;24399:20;;24192:233;;;:::o;24431:410::-;24471:7;24494:20;24512:1;24494:20;:::i;:::-;24489:25;;24528:20;24546:1;24528:20;:::i;:::-;24523:25;;24583:1;24580;24576:9;24605:30;24623:11;24605:30;:::i;:::-;24594:41;;24784:1;24775:7;24771:15;24768:1;24765:22;24745:1;24738:9;24718:83;24695:139;;24814:18;;:::i;:::-;24695:139;24479:362;24431:410;;;;:::o;24847:180::-;24895:77;24892:1;24885:88;24992:4;24989:1;24982:15;25016:4;25013:1;25006:15;25033:185;25073:1;25090:20;25108:1;25090:20;:::i;:::-;25085:25;;25124:20;25142:1;25124:20;:::i;:::-;25119:25;;25163:1;25153:35;;25168:18;;:::i;:::-;25153:35;25210:1;25207;25203:9;25198:14;;25033:185;;;;:::o;25224:60::-;25252:3;25273:5;25266:12;;25224:60;;;:::o;25290:140::-;25339:9;25372:52;25390:33;25399:23;25416:5;25399:23;:::i;:::-;25390:33;:::i;:::-;25372:52;:::i;:::-;25359:65;;25290:140;;;:::o;25436:129::-;25522:36;25552:5;25522:36;:::i;:::-;25517:3;25510:49;25436:129;;:::o;25571:146::-;25668:6;25663:3;25658;25645:30;25709:1;25700:6;25695:3;25691:16;25684:27;25571:146;;;:::o;25723:102::-;25764:6;25815:2;25811:7;25806:2;25799:5;25795:14;25791:28;25781:38;;25723:102;;;:::o;25855:317::-;25953:3;25974:71;26038:6;26033:3;25974:71;:::i;:::-;25967:78;;26055:56;26104:6;26099:3;26092:5;26055:56;:::i;:::-;26136:29;26158:6;26136:29;:::i;:::-;26131:3;26127:39;26120:46;;25855:317;;;;;:::o;26178:662::-;26384:4;26422:3;26411:9;26407:19;26399:27;;26436:71;26504:1;26493:9;26489:17;26480:6;26436:71;:::i;:::-;26517:72;26585:2;26574:9;26570:18;26561:6;26517:72;:::i;:::-;26599:71;26666:2;26655:9;26651:18;26642:6;26599:71;:::i;:::-;26717:9;26711:4;26707:20;26702:2;26691:9;26687:18;26680:48;26745:88;26828:4;26819:6;26811;26745:88;:::i;:::-;26737:96;;26178:662;;;;;;;;:::o;26846:233::-;26986:34;26982:1;26974:6;26970:14;26963:58;27055:16;27050:2;27042:6;27038:15;27031:41;26846:233;:::o;27085:366::-;27227:3;27248:67;27312:2;27307:3;27248:67;:::i;:::-;27241:74;;27324:93;27413:3;27324:93;:::i;:::-;27442:2;27437:3;27433:12;27426:19;;27085:366;;;:::o;27457:419::-;27623:4;27661:2;27650:9;27646:18;27638:26;;27710:9;27704:4;27700:20;27696:1;27685:9;27681:17;27674:47;27738:131;27864:4;27738:131;:::i;:::-;27730:139;;27457:419;;;:::o;27882:85::-;27927:7;27956:5;27945:16;;27882:85;;;:::o;27973:86::-;28008:7;28048:4;28041:5;28037:16;28026:27;;27973:86;;;:::o;28065:154::-;28121:9;28154:59;28170:42;28179:32;28205:5;28179:32;:::i;:::-;28170:42;:::i;:::-;28154:59;:::i;:::-;28141:72;;28065:154;;;:::o;28225:143::-;28318:43;28355:5;28318:43;:::i;:::-;28313:3;28306:56;28225:143;;:::o;28374:234::-;28473:4;28511:2;28500:9;28496:18;28488:26;;28524:77;28598:1;28587:9;28583:17;28574:6;28524:77;:::i;:::-;28374:234;;;;:::o;28614:173::-;28754:25;28750:1;28742:6;28738:14;28731:49;28614:173;:::o;28793:366::-;28935:3;28956:67;29020:2;29015:3;28956:67;:::i;:::-;28949:74;;29032:93;29121:3;29032:93;:::i;:::-;29150:2;29145:3;29141:12;29134:19;;28793:366;;;:::o;29165:419::-;29331:4;29369:2;29358:9;29354:18;29346:26;;29418:9;29412:4;29408:20;29404:1;29393:9;29389:17;29382:47;29446:131;29572:4;29446:131;:::i;:::-;29438:139;;29165:419;;;:::o;29590:216::-;29629:4;29649:19;29666:1;29649:19;:::i;:::-;29644:24;;29682:19;29699:1;29682:19;:::i;:::-;29677:24;;29725:1;29722;29718:9;29710:17;;29749:26;29743:4;29740:36;29737:62;;;29779:18;;:::i;:::-;29737:62;29590:216;;;;:::o;29812:138::-;29860:9;29893:51;29910:33;29919:23;29936:5;29919:23;:::i;:::-;29910:33;:::i;:::-;29893:51;:::i;:::-;29880:64;;29812:138;;;:::o;29956:127::-;30041:35;30070:5;30041:35;:::i;:::-;30036:3;30029:48;29956:127;;:::o;30089:328::-;30208:4;30246:2;30235:9;30231:18;30223:26;;30259:71;30327:1;30316:9;30312:17;30303:6;30259:71;:::i;:::-;30340:70;30406:2;30395:9;30391:18;30382:6;30340:70;:::i;:::-;30089:328;;;;;:::o;30423:182::-;30563:34;30559:1;30551:6;30547:14;30540:58;30423:182;:::o;30611:366::-;30753:3;30774:67;30838:2;30833:3;30774:67;:::i;:::-;30767:74;;30850:93;30939:3;30850:93;:::i;:::-;30968:2;30963:3;30959:12;30952:19;;30611:366;;;:::o;30983:419::-;31149:4;31187:2;31176:9;31172:18;31164:26;;31236:9;31230:4;31226:20;31222:1;31211:9;31207:17;31200:47;31264:131;31390:4;31264:131;:::i;:::-;31256:139;;30983:419;;;:::o;31408:166::-;31548:18;31544:1;31536:6;31532:14;31525:42;31408:166;:::o;31580:366::-;31722:3;31743:67;31807:2;31802:3;31743:67;:::i;:::-;31736:74;;31819:93;31908:3;31819:93;:::i;:::-;31937:2;31932:3;31928:12;31921:19;;31580:366;;;:::o;31952:419::-;32118:4;32156:2;32145:9;32141:18;32133:26;;32205:9;32199:4;32195:20;32191:1;32180:9;32176:17;32169:47;32233:131;32359:4;32233:131;:::i;:::-;32225:139;;31952:419;;;:::o;32377:167::-;32517:19;32513:1;32505:6;32501:14;32494:43;32377:167;:::o;32550:366::-;32692:3;32713:67;32777:2;32772:3;32713:67;:::i;:::-;32706:74;;32789:93;32878:3;32789:93;:::i;:::-;32907:2;32902:3;32898:12;32891:19;;32550:366;;;:::o;32922:419::-;33088:4;33126:2;33115:9;33111:18;33103:26;;33175:9;33169:4;33165:20;33161:1;33150:9;33146:17;33139:47;33203:131;33329:4;33203:131;:::i;:::-;33195:139;;32922:419;;;:::o;33347:162::-;33487:14;33483:1;33475:6;33471:14;33464:38;33347:162;:::o;33515:366::-;33657:3;33678:67;33742:2;33737:3;33678:67;:::i;:::-;33671:74;;33754:93;33843:3;33754:93;:::i;:::-;33872:2;33867:3;33863:12;33856:19;;33515:366;;;:::o;33887:419::-;34053:4;34091:2;34080:9;34076:18;34068:26;;34140:9;34134:4;34130:20;34126:1;34115:9;34111:17;34104:47;34168:131;34294:4;34168:131;:::i;:::-;34160:139;;33887:419;;;:::o;34312:166::-;34452:18;34448:1;34440:6;34436:14;34429:42;34312:166;:::o;34484:366::-;34626:3;34647:67;34711:2;34706:3;34647:67;:::i;:::-;34640:74;;34723:93;34812:3;34723:93;:::i;:::-;34841:2;34836:3;34832:12;34825:19;;34484:366;;;:::o;34856:419::-;35022:4;35060:2;35049:9;35045:18;35037:26;;35109:9;35103:4;35099:20;35095:1;35084:9;35080:17;35073:47;35137:131;35263:4;35137:131;:::i;:::-;35129:139;;34856:419;;;:::o;35281:175::-;35421:27;35417:1;35409:6;35405:14;35398:51;35281:175;:::o;35462:366::-;35604:3;35625:67;35689:2;35684:3;35625:67;:::i;:::-;35618:74;;35701:93;35790:3;35701:93;:::i;:::-;35819:2;35814:3;35810:12;35803:19;;35462:366;;;:::o;35834:419::-;36000:4;36038:2;36027:9;36023:18;36015:26;;36087:9;36081:4;36077:20;36073:1;36062:9;36058:17;36051:47;36115:131;36241:4;36115:131;:::i;:::-;36107:139;;35834:419;;;:::o;36259:230::-;36399:34;36395:1;36387:6;36383:14;36376:58;36468:13;36463:2;36455:6;36451:15;36444:38;36259:230;:::o;36495:366::-;36637:3;36658:67;36722:2;36717:3;36658:67;:::i;:::-;36651:74;;36734:93;36823:3;36734:93;:::i;:::-;36852:2;36847:3;36843:12;36836:19;;36495:366;;;:::o;36867:419::-;37033:4;37071:2;37060:9;37056:18;37048:26;;37120:9;37114:4;37110:20;37106:1;37095:9;37091:17;37084:47;37148:131;37274:4;37148:131;:::i;:::-;37140:139;;36867:419;;;:::o;37292:170::-;37432:22;37428:1;37420:6;37416:14;37409:46;37292:170;:::o;37468:366::-;37610:3;37631:67;37695:2;37690:3;37631:67;:::i;:::-;37624:74;;37707:93;37796:3;37707:93;:::i;:::-;37825:2;37820:3;37816:12;37809:19;;37468:366;;;:::o;37840:419::-;38006:4;38044:2;38033:9;38029:18;38021:26;;38093:9;38087:4;38083:20;38079:1;38068:9;38064:17;38057:47;38121:131;38247:4;38121:131;:::i;:::-;38113:139;;37840:419;;;:::o", + "source": "// SPDX-License-Identifier: UNLICENSED\npragma solidity ^0.8.18;\n\nimport '@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol';\n\nimport {GatewaySettingManager} from './GatewaySettingManager.sol';\nimport {IGateway, IERC20} from './interfaces/IGateway.sol';\n\n/**\n * @title Gateway\n * @notice This contract serves as a gateway for creating orders and managing settlements.\n */\ncontract Gateway is IGateway, GatewaySettingManager, PausableUpgradeable {\n\tstruct fee {\n\t\tuint256 protocolFee;\n\t\tuint256 liquidityProviderAmount;\n\t}\n\n\tmapping(bytes32 => Order) private order;\n\tmapping(address => uint256) private _nonce;\n\tuint256[50] private __gap;\n\n\t/// @custom:oz-upgrades-unsafe-allow constructor\n\tconstructor() {\n\t\t_disableInitializers();\n\t}\n\n\t/**\n\t * @dev Initialize function.\n\t */\n\tfunction initialize() external initializer {\n\t\tMAX_BPS = 100_000;\n\t\t__Ownable2Step_init();\n\t\t__Pausable_init();\n\t}\n\n\t/**\n\t * @dev Modifier that allows only the aggregator to call a function.\n\t */\n\tmodifier onlyAggregator() {\n\t\trequire(msg.sender == _aggregatorAddress, 'OnlyAggregator');\n\t\t_;\n\t}\n\n\t/* ##################################################################\n OWNER FUNCTIONS\n ################################################################## */\n\t/**\n\t * @dev Pause the contract.\n\t */\n\tfunction pause() external onlyOwner {\n\t\t_pause();\n\t}\n\n\t/**\n\t * @dev Unpause the contract.\n\t */\n\tfunction unpause() external onlyOwner {\n\t\t_unpause();\n\t}\n\n\t/* ##################################################################\n USER CALLS\n ################################################################## */\n\t/** @dev See {createOrder-IGateway}. */\n\tfunction createOrder(\n\t\taddress _token,\n\t\tuint256 _amount,\n\t\tuint96 _rate,\n\t\taddress _senderFeeRecipient,\n\t\tuint256 _senderFee,\n\t\taddress _refundAddress,\n\t\tstring calldata messageHash\n\t) external whenNotPaused returns (bytes32 orderId) {\n\t\t// checks that are required\n\t\t_handler(_token, _amount, _refundAddress, _senderFeeRecipient, _senderFee);\n\n\t\t// validate messageHash\n\t\trequire(bytes(messageHash).length != 0, 'InvalidMessageHash');\n\n\t\t// transfer token from msg.sender to contract\n\t\tIERC20(_token).transferFrom(msg.sender, address(this), _amount + _senderFee);\n\n\t\t// increase users nonce to avoid replay attacks\n\t\t_nonce[msg.sender]++;\n\n\t\t// generate transaction id for the transaction\n\t\torderId = keccak256(abi.encode(msg.sender, _nonce[msg.sender]));\n\n\t\t// update transaction\n\t\tuint256 _protocolFee = (_amount * protocolFeePercent) / MAX_BPS;\n\t\torder[orderId] = Order({\n\t\t\tsender: msg.sender,\n\t\t\ttoken: _token,\n\t\t\tsenderFeeRecipient: _senderFeeRecipient,\n\t\t\tsenderFee: _senderFee,\n\t\t\tprotocolFee: _protocolFee,\n\t\t\tisFulfilled: false,\n\t\t\tisRefunded: false,\n\t\t\trefundAddress: _refundAddress,\n\t\t\tcurrentBPS: uint64(MAX_BPS),\n\t\t\tamount: _amount\n\t\t});\n\n\t\t// emit order created event\n\t\temit OrderCreated(\n\t\t\torder[orderId].sender,\n\t\t\t_token,\n\t\t\torder[orderId].amount,\n\t\t\t_protocolFee,\n\t\t\torderId,\n\t\t\t_rate,\n\t\t\tmessageHash\n\t\t);\n\t}\n\n\t/**\n\t * @dev Internal function to handle order creation.\n\t * @param _token The address of the token being traded.\n\t * @param _amount The amount of tokens being traded.\n\t * @param _refundAddress The address to refund the tokens in case of cancellation.\n\t * @param _senderFeeRecipient The address of the recipient for the sender fee.\n\t * @param _senderFee The amount of the sender fee.\n\t */\n\tfunction _handler(\n\t\taddress _token,\n\t\tuint256 _amount,\n\t\taddress _refundAddress,\n\t\taddress _senderFeeRecipient,\n\t\tuint256 _senderFee\n\t) internal view {\n\t\trequire(_isTokenSupported[_token] == 1, 'TokenNotSupported');\n\t\trequire(_amount != 0, 'AmountIsZero');\n\t\trequire(_refundAddress != address(0), 'ThrowZeroAddress');\n\n\t\tif (_senderFee != 0) {\n\t\t\trequire(_senderFeeRecipient != address(0), 'InvalidSenderFeeRecipient');\n\t\t}\n\t}\n\n\t/* ##################################################################\n AGGREGATOR FUNCTIONS\n ################################################################## */\n\t/** @dev See {settle-IGateway}. */\n\tfunction settle(\n\t\tbytes32 _splitOrderId,\n\t\tbytes32 _orderId,\n\t\taddress _liquidityProvider,\n\t\tuint64 _settlePercent\n\t) external onlyAggregator returns (bool) {\n\t\t// ensure the transaction has not been fulfilled\n\t\trequire(!order[_orderId].isFulfilled, 'OrderFulfilled');\n\t\trequire(!order[_orderId].isRefunded, 'OrderRefunded');\n\n\t\t// load the token into memory\n\t\taddress token = order[_orderId].token;\n\n\t\t// subtract sum of amount based on the input _settlePercent\n\t\torder[_orderId].currentBPS -= _settlePercent;\n\n\t\tif (order[_orderId].currentBPS == 0) {\n\t\t\t// update the transaction to be fulfilled\n\t\t\torder[_orderId].isFulfilled = true;\n\n\t\t\tif (order[_orderId].senderFee != 0) {\n\t\t\t\t// transfer sender fee\n\t\t\t\tIERC20(order[_orderId].token).transfer(\n\t\t\t\t\torder[_orderId].senderFeeRecipient,\n\t\t\t\t\torder[_orderId].senderFee\n\t\t\t\t);\n\n\t\t\t\t// emit event\n\t\t\t\temit SenderFeeTransferred(\n\t\t\t\t\torder[_orderId].senderFeeRecipient,\n\t\t\t\t\torder[_orderId].senderFee\n\t\t\t\t);\n\t\t\t}\n\n\t\t}\n\n\t\t// transfer to liquidity provider\n\t\tuint256 liquidityProviderAmount = (order[_orderId].amount * _settlePercent) / MAX_BPS;\n\t\torder[_orderId].amount -= liquidityProviderAmount;\n\n\t\tuint256 protocolFee = (liquidityProviderAmount * protocolFeePercent) / MAX_BPS;\n\t\tliquidityProviderAmount -= protocolFee;\n\n\t\t// transfer protocol fee\n\t\tIERC20(token).transfer(treasuryAddress, protocolFee);\n\n\t\tIERC20(token).transfer(_liquidityProvider, liquidityProviderAmount);\n\n\t\t// emit settled event\n\t\temit OrderSettled(_splitOrderId, _orderId, _liquidityProvider, _settlePercent);\n\n\t\treturn true;\n\t}\n\n\t/** @dev See {refund-IGateway}. */\n\tfunction refund(uint256 _fee, bytes32 _orderId) external onlyAggregator returns (bool) {\n\t\t// ensure the transaction has not been fulfilled\n\t\trequire(!order[_orderId].isFulfilled, 'OrderFulfilled');\n\t\trequire(!order[_orderId].isRefunded, 'OrderRefunded');\n\t\trequire(order[_orderId].protocolFee >= _fee, 'FeeExceedsProtocolFee');\n\n\t\t// transfer refund fee to the treasury\n\t\tIERC20(order[_orderId].token).transfer(treasuryAddress, _fee);\n\n\t\t// reset state values\n\t\torder[_orderId].isRefunded = true;\n\t\torder[_orderId].currentBPS = 0;\n\n\t\t// deduct fee from order amount\n\t\tuint256 refundAmount = order[_orderId].amount + order[_orderId].protocolFee - _fee;\n\n\t\t// transfer refund amount and sender fee to the refund address\n\t\tIERC20(order[_orderId].token).transfer(\n\t\t\torder[_orderId].refundAddress,\n\t\t\trefundAmount + order[_orderId].senderFee\n\t\t);\n\n\t\t// emit refunded event\n\t\temit OrderRefunded(_fee, _orderId);\n\n\t\treturn true;\n\t}\n\n\t/* ##################################################################\n VIEW CALLS\n ################################################################## */\n\t/** @dev See {getOrderInfo-IGateway}. */\n\tfunction getOrderInfo(bytes32 _orderId) external view returns (Order memory) {\n\t\treturn order[_orderId];\n\t}\n\n\t/** @dev See {isTokenSupported-IGateway}. */\n\tfunction isTokenSupported(address _token) external view returns (bool) {\n\t\tif (_isTokenSupported[_token] == 1) return true;\n\t\treturn false;\n\t}\n\n\t/** @dev See {getFeeDetails-IGateway}. */\n\tfunction getFeeDetails() external view returns (uint64, uint256) {\n\t\treturn (protocolFeePercent, MAX_BPS);\n\t}\n}\n", + "sourcePath": "/Users/encryption/Downloads/projects/paycrest/paycrestContract/contracts/Gateway.sol", "ast": { - "absolutePath": "/Users/chibie/paycrest/contracts/contracts/Gateway.sol", + "absolutePath": "/Users/encryption/Downloads/projects/paycrest/paycrestContract/contracts/Gateway.sol", "exportedSymbols": { "ContextUpgradeable": [ - 1892 + 1889 ], "Gateway": [ - 582 + 579 ], "GatewaySettingManager": [ - 766 + 763 ], "IERC20": [ - 2557 + 2554 ], "IGateway": [ - 904 + 901 ], "Initializable": [ - 1383 + 1380 ], "PausableUpgradeable": [ - 1511 + 1508 ] }, - "id": 583, + "id": 580, "license": "UNLICENSED", "nodeType": "SourceUnit", "nodes": [ @@ -680,20 +680,20 @@ "id": 2, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", - "scope": 583, - "sourceUnit": 1512, + "scope": 580, + "sourceUnit": 1509, "src": "65:78:0", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "/Users/chibie/paycrest/contracts/contracts/GatewaySettingManager.sol", + "absolutePath": "/Users/encryption/Downloads/projects/paycrest/paycrestContract/contracts/GatewaySettingManager.sol", "file": "./GatewaySettingManager.sol", "id": 4, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", - "scope": 583, - "sourceUnit": 767, + "scope": 580, + "sourceUnit": 764, "src": "145:66:0", "symbolAliases": [ { @@ -702,7 +702,7 @@ "name": "GatewaySettingManager", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 766, + "referencedDeclaration": 763, "src": "153:21:0", "typeDescriptions": {} }, @@ -712,13 +712,13 @@ "unitAlias": "" }, { - "absolutePath": "/Users/chibie/paycrest/contracts/contracts/interfaces/IGateway.sol", + "absolutePath": "/Users/encryption/Downloads/projects/paycrest/paycrestContract/contracts/interfaces/IGateway.sol", "file": "./interfaces/IGateway.sol", "id": 7, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", - "scope": 583, - "sourceUnit": 905, + "scope": 580, + "sourceUnit": 902, "src": "212:59:0", "symbolAliases": [ { @@ -727,7 +727,7 @@ "name": "IGateway", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 904, + "referencedDeclaration": 901, "src": "220:8:0", "typeDescriptions": {} }, @@ -739,7 +739,7 @@ "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2557, + "referencedDeclaration": 2554, "src": "230:6:0", "typeDescriptions": {} }, @@ -759,7 +759,7 @@ "410:8:0" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 904, + "referencedDeclaration": 901, "src": "410:8:0" }, "id": 10, @@ -774,7 +774,7 @@ "420:21:0" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 766, + "referencedDeclaration": 763, "src": "420:21:0" }, "id": 12, @@ -789,7 +789,7 @@ "443:19:0" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 1511, + "referencedDeclaration": 1508, "src": "443:19:0" }, "id": 14, @@ -807,16 +807,16 @@ "text": " @title Gateway\n @notice This contract serves as a gateway for creating orders and managing settlements." }, "fullyImplemented": true, - "id": 582, + "id": 579, "linearizedBaseContracts": [ - 582, - 1511, - 766, - 1081, - 1214, - 1892, - 1383, - 904 + 579, + 1508, + 763, + 1078, + 1211, + 1889, + 1380, + 901 ], "name": "Gateway", "nameLocation": "399:7:0", @@ -884,7 +884,7 @@ "name": "fee", "nameLocation": "473:3:0", "nodeType": "StructDefinition", - "scope": 582, + "scope": 579, "src": "466:73:0", "visibility": "public" }, @@ -895,12 +895,12 @@ "name": "order", "nameLocation": "576:5:0", "nodeType": "VariableDeclaration", - "scope": 582, + "scope": 579, "src": "542:39:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$831_storage_$", "typeString": "mapping(bytes32 => struct IGateway.Order)" }, "typeName": { @@ -920,7 +920,7 @@ "nodeType": "Mapping", "src": "542:25:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$831_storage_$", "typeString": "mapping(bytes32 => struct IGateway.Order)" }, "valueName": "", @@ -935,13 +935,13 @@ "561:5:0" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 834, + "referencedDeclaration": 831, "src": "561:5:0" }, - "referencedDeclaration": 834, + "referencedDeclaration": 831, "src": "561:5:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage_ptr", + "typeIdentifier": "t_struct$_Order_$831_storage_ptr", "typeString": "struct IGateway.Order" } } @@ -955,7 +955,7 @@ "name": "_nonce", "nameLocation": "620:6:0", "nodeType": "VariableDeclaration", - "scope": 582, + "scope": 579, "src": "584:42:0", "stateVariable": true, "storageLocation": "default", @@ -1005,7 +1005,7 @@ "name": "__gap", "nameLocation": "649:5:0", "nodeType": "VariableDeclaration", - "scope": 582, + "scope": 579, "src": "629:25:0", "stateVariable": true, "storageLocation": "default", @@ -1065,7 +1065,7 @@ "name": "_disableInitializers", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1364, + "referencedDeclaration": 1361, "src": "726:20:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", @@ -1119,7 +1119,7 @@ "parameters": [], "src": "722:0:0" }, - "scope": 582, + "scope": 579, "src": "708:44:0", "stateMutability": "nonpayable", "virtual": false, @@ -1143,7 +1143,7 @@ "name": "MAX_BPS", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 589, + "referencedDeclaration": 586, "src": "842:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1187,7 +1187,7 @@ "name": "__Ownable2Step_init", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1001, + "referencedDeclaration": 998, "src": "863:19:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", @@ -1223,7 +1223,7 @@ "name": "__Pausable_init", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1415, + "referencedDeclaration": 1412, "src": "888:15:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", @@ -1273,7 +1273,7 @@ "826:11:0" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 1285, + "referencedDeclaration": 1282, "src": "826:11:0" }, "nodeType": "ModifierInvocation", @@ -1295,7 +1295,7 @@ "parameters": [], "src": "838:0:0" }, - "scope": 582, + "scope": 579, "src": "795:114:0", "stateMutability": "nonpayable", "virtual": false, @@ -1354,7 +1354,7 @@ "name": "_aggregatorAddress", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 595, + "referencedDeclaration": 592, "src": "1044:18:0", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1471,7 +1471,7 @@ "name": "_pause", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1489, + "referencedDeclaration": 1486, "src": "1365:6:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", @@ -1521,7 +1521,7 @@ "1351:9:0" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 1128, + "referencedDeclaration": 1125, "src": "1351:9:0" }, "nodeType": "ModifierInvocation", @@ -1543,7 +1543,7 @@ "parameters": [], "src": "1361:0:0" }, - "scope": 582, + "scope": 579, "src": "1325:52:0", "stateMutability": "nonpayable", "virtual": false, @@ -1564,7 +1564,7 @@ "name": "_unpause", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1505, + "referencedDeclaration": 1502, "src": "1463:8:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", @@ -1614,7 +1614,7 @@ "1449:9:0" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 1128, + "referencedDeclaration": 1125, "src": "1449:9:0" }, "nodeType": "ModifierInvocation", @@ -1636,7 +1636,7 @@ "parameters": [], "src": "1459:0:0" }, - "scope": 582, + "scope": 579, "src": "1421:56:0", "stateMutability": "nonpayable", "virtual": false, @@ -1644,12 +1644,12 @@ }, { "baseFunctions": [ - 854 + 851 ], "body": { - "id": 217, + "id": 212, "nodeType": "Block", - "src": "1945:1133:0", + "src": "1945:1095:0", "statements": [ { "expression": { @@ -1742,7 +1742,7 @@ "name": "_handler", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 274, + "referencedDeclaration": 269, "src": "1979:8:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$_t_uint256_$_t_address_$_t_address_$_t_uint256_$returns$__$", @@ -1980,7 +1980,7 @@ "referencedDeclaration": 4294967268, "src": "2246:4:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_Gateway_$582", + "typeIdentifier": "t_contract$_Gateway_$579", "typeString": "contract Gateway" } } @@ -1988,7 +1988,7 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Gateway_$582", + "typeIdentifier": "t_contract$_Gateway_$579", "typeString": "contract Gateway" } ], @@ -2111,10 +2111,10 @@ "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2557, + "referencedDeclaration": 2554, "src": "2198:6:0", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$2557_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$2554_$", "typeString": "type(contract IERC20)" } }, @@ -2130,7 +2130,7 @@ "src": "2198:14:0", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$2557", + "typeIdentifier": "t_contract$_IERC20_$2554", "typeString": "contract IERC20" } }, @@ -2142,7 +2142,7 @@ "memberLocation": "2213:12:0", "memberName": "transferFrom", "nodeType": "MemberAccess", - "referencedDeclaration": 2556, + "referencedDeclaration": 2553, "src": "2198:27:0", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", @@ -2456,7 +2456,7 @@ "name": "_protocolFee", "nameLocation": "2503:12:0", "nodeType": "VariableDeclaration", - "scope": 217, + "scope": 212, "src": "2495:20:0", "stateVariable": false, "storageLocation": "default", @@ -2477,13 +2477,13 @@ "visibility": "internal" } ], - "id": 177, + "id": 174, "initialValue": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 176, + "id": 173, "isConstant": false, "isLValue": false, "isPure": false, @@ -2519,7 +2519,7 @@ "name": "protocolFeePercent", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 591, + "referencedDeclaration": 588, "src": "2529:18:0", "typeDescriptions": { "typeIdentifier": "t_uint64", @@ -2549,100 +2549,54 @@ "nodeType": "BinaryOperation", "operator": "/", "rightExpression": { - "components": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 174, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 172, - "name": "MAX_BPS", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 589, - "src": "2552:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "id": 173, - "name": "protocolFeePercent", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 591, - "src": "2562:18:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "2552:28:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "id": 175, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "2551:30:0", + "id": 172, + "name": "MAX_BPS", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 586, + "src": "2551:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "2518:63:0", + "src": "2518:40:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "2495:86:0" + "src": "2495:63:0" }, { "expression": { - "id": 199, + "id": 194, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 178, + "id": 175, "name": "order", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 24, - "src": "2585:5:0", + "src": "2562:5:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$831_storage_$", "typeString": "mapping(bytes32 => struct IGateway.Order storage ref)" } }, - "id": 180, + "id": 177, "indexExpression": { - "id": 179, + "id": 176, "name": "orderId", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 110, - "src": "2591:7:0", + "src": "2568:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -2653,9 +2607,9 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "2585:14:0", + "src": "2562:14:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage", + "typeIdentifier": "t_struct$_Order_$831_storage", "typeString": "struct IGateway.Order storage ref" } }, @@ -2665,74 +2619,74 @@ "arguments": [ { "expression": { - "id": 182, + "id": 179, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "2621:3:0", + "src": "2598:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 183, + "id": 180, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "2625:6:0", + "memberLocation": "2602:6:0", "memberName": "sender", "nodeType": "MemberAccess", - "src": "2621:10:0", + "src": "2598:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 184, + "id": 181, "name": "_token", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 93, - "src": "2643:6:0", + "src": "2620:6:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 185, + "id": 182, "name": "_senderFeeRecipient", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 99, - "src": "2674:19:0", + "src": "2651:19:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 186, + "id": 183, "name": "_senderFee", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 101, - "src": "2709:10:0", + "src": "2686:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { - "id": 187, + "id": 184, "name": "_protocolFee", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 167, - "src": "2737:12:0", + "src": "2714:12:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2740,14 +2694,14 @@ }, { "hexValue": "66616c7365", - "id": 188, + "id": 185, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "2767:5:0", + "src": "2744:5:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -2756,14 +2710,14 @@ }, { "hexValue": "66616c7365", - "id": 189, + "id": 186, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "2789:5:0", + "src": "2766:5:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -2771,12 +2725,12 @@ "value": "false" }, { - "id": 190, + "id": 187, "name": "_refundAddress", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 103, - "src": "2814:14:0", + "src": "2791:14:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2785,12 +2739,12 @@ { "arguments": [ { - "id": 193, + "id": 190, "name": "MAX_BPS", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 589, - "src": "2852:7:0", + "referencedDeclaration": 586, + "src": "2829:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2804,26 +2758,26 @@ "typeString": "uint256" } ], - "id": 192, + "id": 189, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "2845:6:0", + "src": "2822:6:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_uint64_$", "typeString": "type(uint64)" }, "typeName": { - "id": 191, + "id": 188, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "2845:6:0", + "src": "2822:6:0", "typeDescriptions": {} } }, - "id": 194, + "id": 191, "isConstant": false, "isLValue": false, "isPure": false, @@ -2832,7 +2786,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2845:15:0", + "src": "2822:15:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint64", @@ -2840,42 +2794,12 @@ } }, { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 197, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 195, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 95, - "src": "2873:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "id": 196, - "name": "_protocolFee", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 167, - "src": "2883:12:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "2873:22:0", + "id": 192, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 95, + "src": "2850:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2925,34 +2849,34 @@ "typeString": "uint256" } ], - "id": 181, + "id": 178, "name": "Order", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 834, - "src": "2602:5:0", + "referencedDeclaration": 831, + "src": "2579:5:0", "typeDescriptions": { - "typeIdentifier": "t_type$_t_struct$_Order_$834_storage_ptr_$", + "typeIdentifier": "t_type$_t_struct$_Order_$831_storage_ptr_$", "typeString": "type(struct IGateway.Order storage pointer)" } }, - "id": 198, + "id": 193, "isConstant": false, "isLValue": false, "isPure": false, "kind": "structConstructorCall", "lValueRequested": false, "nameLocations": [ - "2613:6:0", - "2636:5:0", - "2654:18:0", - "2698:9:0", - "2724:11:0", - "2754:11:0", - "2777:10:0", - "2799:13:0", - "2833:10:0", - "2865:6:0" + "2590:6:0", + "2613:5:0", + "2631:18:0", + "2675:9:0", + "2701:11:0", + "2731:11:0", + "2754:10:0", + "2776:13:0", + "2810:10:0", + "2842:6:0" ], "names": [ "sender", @@ -2967,22 +2891,22 @@ "amount" ], "nodeType": "FunctionCall", - "src": "2602:298:0", + "src": "2579:283:0", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_memory_ptr", + "typeIdentifier": "t_struct$_Order_$831_memory_ptr", "typeString": "struct IGateway.Order memory" } }, - "src": "2585:315:0", + "src": "2562:300:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage", + "typeIdentifier": "t_struct$_Order_$831_storage", "typeString": "struct IGateway.Order storage ref" } }, - "id": 200, + "id": 195, "nodeType": "ExpressionStatement", - "src": "2585:315:0" + "src": "2562:300:0" }, { "eventCall": { @@ -2990,25 +2914,25 @@ { "expression": { "baseExpression": { - "id": 202, + "id": 197, "name": "order", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 24, - "src": "2957:5:0", + "src": "2919:5:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$831_storage_$", "typeString": "mapping(bytes32 => struct IGateway.Order storage ref)" } }, - "id": 204, + "id": 199, "indexExpression": { - "id": 203, + "id": 198, "name": "orderId", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 110, - "src": "2963:7:0", + "src": "2925:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -3019,34 +2943,34 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "2957:14:0", + "src": "2919:14:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage", + "typeIdentifier": "t_struct$_Order_$831_storage", "typeString": "struct IGateway.Order storage ref" } }, - "id": 205, + "id": 200, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "2972:6:0", + "memberLocation": "2934:6:0", "memberName": "sender", "nodeType": "MemberAccess", - "referencedDeclaration": 815, - "src": "2957:21:0", + "referencedDeclaration": 812, + "src": "2919:21:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 206, + "id": 201, "name": "_token", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 93, - "src": "2983:6:0", + "src": "2945:6:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3055,25 +2979,25 @@ { "expression": { "baseExpression": { - "id": 207, + "id": 202, "name": "order", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 24, - "src": "2994:5:0", + "src": "2956:5:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$831_storage_$", "typeString": "mapping(bytes32 => struct IGateway.Order storage ref)" } }, - "id": 209, + "id": 204, "indexExpression": { - "id": 208, + "id": 203, "name": "orderId", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 110, - "src": "3000:7:0", + "src": "2962:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -3084,70 +3008,70 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "2994:14:0", + "src": "2956:14:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage", + "typeIdentifier": "t_struct$_Order_$831_storage", "typeString": "struct IGateway.Order storage ref" } }, - "id": 210, + "id": 205, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "3009:6:0", + "memberLocation": "2971:6:0", "memberName": "amount", "nodeType": "MemberAccess", - "referencedDeclaration": 833, - "src": "2994:21:0", + "referencedDeclaration": 830, + "src": "2956:21:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { - "id": 211, + "id": 206, "name": "_protocolFee", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 167, - "src": "3020:12:0", + "src": "2982:12:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { - "id": 212, + "id": 207, "name": "orderId", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 110, - "src": "3037:7:0", + "src": "2999:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 213, + "id": 208, "name": "_rate", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 97, - "src": "3049:5:0", + "src": "3011:5:0", "typeDescriptions": { "typeIdentifier": "t_uint96", "typeString": "uint96" } }, { - "id": 214, + "id": 209, "name": "messageHash", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 105, - "src": "3059:11:0", + "src": "3021:11:0", "typeDescriptions": { "typeIdentifier": "t_string_calldata_ptr", "typeString": "string calldata" @@ -3185,18 +3109,18 @@ "typeString": "string calldata" } ], - "id": 201, + "id": 196, "name": "OrderCreated", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 788, - "src": "2940:12:0", + "referencedDeclaration": 785, + "src": "2902:12:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_uint256_$_t_bytes32_$_t_uint256_$_t_string_memory_ptr_$returns$__$", "typeString": "function (address,address,uint256,uint256,bytes32,uint256,string memory)" } }, - "id": 215, + "id": 210, "isConstant": false, "isLValue": false, "isPure": false, @@ -3205,16 +3129,16 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2940:134:0", + "src": "2902:134:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 216, + "id": 211, "nodeType": "EmitStatement", - "src": "2935:139:0" + "src": "2897:139:0" } ] }, @@ -3225,7 +3149,7 @@ "text": "@dev See {createOrder-IGateway}. " }, "functionSelector": "809804f7", - "id": 218, + "id": 213, "implemented": true, "kind": "function", "modifiers": [ @@ -3239,7 +3163,7 @@ "1905:13:0" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 1433, + "referencedDeclaration": 1430, "src": "1905:13:0" }, "nodeType": "ModifierInvocation", @@ -3260,7 +3184,7 @@ "name": "_token", "nameLocation": "1741:6:0", "nodeType": "VariableDeclaration", - "scope": 218, + "scope": 213, "src": "1733:14:0", "stateVariable": false, "storageLocation": "default", @@ -3288,7 +3212,7 @@ "name": "_amount", "nameLocation": "1759:7:0", "nodeType": "VariableDeclaration", - "scope": 218, + "scope": 213, "src": "1751:15:0", "stateVariable": false, "storageLocation": "default", @@ -3315,7 +3239,7 @@ "name": "_rate", "nameLocation": "1777:5:0", "nodeType": "VariableDeclaration", - "scope": 218, + "scope": 213, "src": "1770:12:0", "stateVariable": false, "storageLocation": "default", @@ -3342,7 +3266,7 @@ "name": "_senderFeeRecipient", "nameLocation": "1794:19:0", "nodeType": "VariableDeclaration", - "scope": 218, + "scope": 213, "src": "1786:27:0", "stateVariable": false, "storageLocation": "default", @@ -3370,7 +3294,7 @@ "name": "_senderFee", "nameLocation": "1825:10:0", "nodeType": "VariableDeclaration", - "scope": 218, + "scope": 213, "src": "1817:18:0", "stateVariable": false, "storageLocation": "default", @@ -3397,7 +3321,7 @@ "name": "_refundAddress", "nameLocation": "1847:14:0", "nodeType": "VariableDeclaration", - "scope": 218, + "scope": 213, "src": "1839:22:0", "stateVariable": false, "storageLocation": "default", @@ -3425,7 +3349,7 @@ "name": "messageHash", "nameLocation": "1881:11:0", "nodeType": "VariableDeclaration", - "scope": 218, + "scope": 213, "src": "1865:27:0", "stateVariable": false, "storageLocation": "calldata", @@ -3459,7 +3383,7 @@ "name": "orderId", "nameLocation": "1936:7:0", "nodeType": "VariableDeclaration", - "scope": 218, + "scope": 213, "src": "1928:15:0", "stateVariable": false, "storageLocation": "default", @@ -3482,17 +3406,17 @@ ], "src": "1927:17:0" }, - "scope": 582, - "src": "1709:1369:0", + "scope": 579, + "src": "1709:1331:0", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { "body": { - "id": 273, + "id": 268, "nodeType": "Block", - "src": "3622:276:0", + "src": "3584:276:0", "statements": [ { "expression": { @@ -3502,32 +3426,32 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 237, + "id": 232, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "baseExpression": { - "id": 233, + "id": 228, "name": "_isTokenSupported", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 599, - "src": "3634:17:0", + "referencedDeclaration": 596, + "src": "3596:17:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 235, + "id": 230, "indexExpression": { - "id": 234, + "id": 229, "name": "_token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 221, - "src": "3652:6:0", + "referencedDeclaration": 216, + "src": "3614:6:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3538,7 +3462,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3634:25:0", + "src": "3596:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3548,21 +3472,21 @@ "operator": "==", "rightExpression": { "hexValue": "31", - "id": 236, + "id": 231, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3663:1:0", + "src": "3625:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", "typeString": "int_const 1" }, "value": "1" }, - "src": "3634:30:0", + "src": "3596:30:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -3570,14 +3494,14 @@ }, { "hexValue": "546f6b656e4e6f74537570706f72746564", - "id": 238, + "id": 233, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3666:19:0", + "src": "3628:19:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_d2f8e8f0a3132d85392dd42596f134395b200d03cc73cebaef0c903d898657e1", "typeString": "literal_string \"TokenNotSupported\"" @@ -3596,7 +3520,7 @@ "typeString": "literal_string \"TokenNotSupported\"" } ], - "id": 232, + "id": 227, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -3604,13 +3528,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "3626:7:0", + "src": "3588:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 239, + "id": 234, "isConstant": false, "isLValue": false, "isPure": false, @@ -3619,16 +3543,16 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3626:60:0", + "src": "3588:60:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 240, + "id": 235, "nodeType": "ExpressionStatement", - "src": "3626:60:0" + "src": "3588:60:0" }, { "expression": { @@ -3638,18 +3562,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 244, + "id": 239, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 242, + "id": 237, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 223, - "src": "3698:7:0", + "referencedDeclaration": 218, + "src": "3660:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3659,21 +3583,21 @@ "operator": "!=", "rightExpression": { "hexValue": "30", - "id": 243, + "id": 238, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3709:1:0", + "src": "3671:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "3698:12:0", + "src": "3660:12:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -3681,14 +3605,14 @@ }, { "hexValue": "416d6f756e7449735a65726f", - "id": 245, + "id": 240, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3712:14:0", + "src": "3674:14:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_41a3c7da6a405d0b582130b233ab9373122491f5044da88c4622af2417f2b5d2", "typeString": "literal_string \"AmountIsZero\"" @@ -3707,7 +3631,7 @@ "typeString": "literal_string \"AmountIsZero\"" } ], - "id": 241, + "id": 236, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -3715,13 +3639,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "3690:7:0", + "src": "3652:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 246, + "id": 241, "isConstant": false, "isLValue": false, "isPure": false, @@ -3730,16 +3654,16 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3690:37:0", + "src": "3652:37:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 247, + "id": 242, "nodeType": "ExpressionStatement", - "src": "3690:37:0" + "src": "3652:37:0" }, { "expression": { @@ -3749,18 +3673,18 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 254, + "id": 249, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 249, + "id": 244, "name": "_refundAddress", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 225, - "src": "3739:14:0", + "referencedDeclaration": 220, + "src": "3701:14:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3772,14 +3696,14 @@ "arguments": [ { "hexValue": "30", - "id": 252, + "id": 247, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3765:1:0", + "src": "3727:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -3794,26 +3718,26 @@ "typeString": "int_const 0" } ], - "id": 251, + "id": 246, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "3757:7:0", + "src": "3719:7:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 250, + "id": 245, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3757:7:0", + "src": "3719:7:0", "typeDescriptions": {} } }, - "id": 253, + "id": 248, "isConstant": false, "isLValue": false, "isPure": true, @@ -3822,14 +3746,14 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3757:10:0", + "src": "3719:10:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "3739:28:0", + "src": "3701:28:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -3837,14 +3761,14 @@ }, { "hexValue": "5468726f775a65726f41646472657373", - "id": 255, + "id": 250, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3769:18:0", + "src": "3731:18:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_c69ddfb7ac12bc88a1972db6046dbf646efc1690dd81423d8eb86a59fbc59dd7", "typeString": "literal_string \"ThrowZeroAddress\"" @@ -3863,7 +3787,7 @@ "typeString": "literal_string \"ThrowZeroAddress\"" } ], - "id": 248, + "id": 243, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -3871,13 +3795,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "3731:7:0", + "src": "3693:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 256, + "id": 251, "isConstant": false, "isLValue": false, "isPure": false, @@ -3886,16 +3810,16 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3731:57:0", + "src": "3693:57:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 257, + "id": 252, "nodeType": "ExpressionStatement", - "src": "3731:57:0" + "src": "3693:57:0" }, { "condition": { @@ -3903,18 +3827,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 260, + "id": 255, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 258, + "id": 253, "name": "_senderFee", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 229, - "src": "3797:10:0", + "referencedDeclaration": 224, + "src": "3759:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3924,33 +3848,33 @@ "operator": "!=", "rightExpression": { "hexValue": "30", - "id": 259, + "id": 254, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3811:1:0", + "src": "3773:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "3797:15:0", + "src": "3759:15:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 272, + "id": 267, "nodeType": "IfStatement", - "src": "3793:102:0", + "src": "3755:102:0", "trueBody": { - "id": 271, + "id": 266, "nodeType": "Block", - "src": "3814:81:0", + "src": "3776:81:0", "statements": [ { "expression": { @@ -3960,18 +3884,18 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 267, + "id": 262, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 262, + "id": 257, "name": "_senderFeeRecipient", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 227, - "src": "3827:19:0", + "referencedDeclaration": 222, + "src": "3789:19:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3983,14 +3907,14 @@ "arguments": [ { "hexValue": "30", - "id": 265, + "id": 260, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3858:1:0", + "src": "3820:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -4005,26 +3929,26 @@ "typeString": "int_const 0" } ], - "id": 264, + "id": 259, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "3850:7:0", + "src": "3812:7:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 263, + "id": 258, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3850:7:0", + "src": "3812:7:0", "typeDescriptions": {} } }, - "id": 266, + "id": 261, "isConstant": false, "isLValue": false, "isPure": true, @@ -4033,14 +3957,14 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3850:10:0", + "src": "3812:10:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "3827:33:0", + "src": "3789:33:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -4048,14 +3972,14 @@ }, { "hexValue": "496e76616c696453656e646572466565526563697069656e74", - "id": 268, + "id": 263, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3862:27:0", + "src": "3824:27:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_ffb69afb32cdb1c7026bbd5bf2be167eb8b698d96a6fa0abd73b70c43ca464b8", "typeString": "literal_string \"InvalidSenderFeeRecipient\"" @@ -4074,7 +3998,7 @@ "typeString": "literal_string \"InvalidSenderFeeRecipient\"" } ], - "id": 261, + "id": 256, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -4082,13 +4006,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "3819:7:0", + "src": "3781:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 269, + "id": 264, "isConstant": false, "isLValue": false, "isPure": false, @@ -4097,16 +4021,16 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3819:71:0", + "src": "3781:71:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 270, + "id": 265, "nodeType": "ExpressionStatement", - "src": "3819:71:0" + "src": "3781:71:0" } ] } @@ -4114,31 +4038,31 @@ ] }, "documentation": { - "id": 219, + "id": 214, "nodeType": "StructuredDocumentation", - "src": "3081:388:0", + "src": "3043:388:0", "text": " @dev Internal function to handle order creation.\n @param _token The address of the token being traded.\n @param _amount The amount of tokens being traded.\n @param _refundAddress The address to refund the tokens in case of cancellation.\n @param _senderFeeRecipient The address of the recipient for the sender fee.\n @param _senderFee The amount of the sender fee." }, - "id": 274, + "id": 269, "implemented": true, "kind": "function", "modifiers": [], "name": "_handler", - "nameLocation": "3480:8:0", + "nameLocation": "3442:8:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 230, + "id": 225, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 221, + "id": 216, "mutability": "mutable", "name": "_token", - "nameLocation": "3500:6:0", + "nameLocation": "3462:6:0", "nodeType": "VariableDeclaration", - "scope": 274, - "src": "3492:14:0", + "scope": 269, + "src": "3454:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4146,10 +4070,10 @@ "typeString": "address" }, "typeName": { - "id": 220, + "id": 215, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3492:7:0", + "src": "3454:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -4160,13 +4084,13 @@ }, { "constant": false, - "id": 223, + "id": 218, "mutability": "mutable", "name": "_amount", - "nameLocation": "3518:7:0", + "nameLocation": "3480:7:0", "nodeType": "VariableDeclaration", - "scope": 274, - "src": "3510:15:0", + "scope": 269, + "src": "3472:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4174,10 +4098,10 @@ "typeString": "uint256" }, "typeName": { - "id": 222, + "id": 217, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3510:7:0", + "src": "3472:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4187,13 +4111,13 @@ }, { "constant": false, - "id": 225, + "id": 220, "mutability": "mutable", "name": "_refundAddress", - "nameLocation": "3537:14:0", + "nameLocation": "3499:14:0", "nodeType": "VariableDeclaration", - "scope": 274, - "src": "3529:22:0", + "scope": 269, + "src": "3491:22:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4201,10 +4125,10 @@ "typeString": "address" }, "typeName": { - "id": 224, + "id": 219, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3529:7:0", + "src": "3491:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -4215,13 +4139,13 @@ }, { "constant": false, - "id": 227, + "id": 222, "mutability": "mutable", "name": "_senderFeeRecipient", - "nameLocation": "3563:19:0", + "nameLocation": "3525:19:0", "nodeType": "VariableDeclaration", - "scope": 274, - "src": "3555:27:0", + "scope": 269, + "src": "3517:27:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4229,10 +4153,10 @@ "typeString": "address" }, "typeName": { - "id": 226, + "id": 221, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3555:7:0", + "src": "3517:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -4243,13 +4167,13 @@ }, { "constant": false, - "id": 229, + "id": 224, "mutability": "mutable", "name": "_senderFee", - "nameLocation": "3594:10:0", + "nameLocation": "3556:10:0", "nodeType": "VariableDeclaration", - "scope": 274, - "src": "3586:18:0", + "scope": 269, + "src": "3548:18:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4257,10 +4181,10 @@ "typeString": "uint256" }, "typeName": { - "id": 228, + "id": 223, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3586:7:0", + "src": "3548:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4269,34 +4193,34 @@ "visibility": "internal" } ], - "src": "3488:119:0" + "src": "3450:119:0" }, "returnParameters": { - "id": 231, + "id": 226, "nodeType": "ParameterList", "parameters": [], - "src": "3622:0:0" + "src": "3584:0:0" }, - "scope": 582, - "src": "3471:427:0", + "scope": 579, + "src": "3433:427:0", "stateMutability": "view", "virtual": false, "visibility": "internal" }, { "baseFunctions": [ - 868 + 865 ], "body": { - "id": 428, + "id": 425, "nodeType": "Block", - "src": "4293:1337:0", + "src": "4255:1396:0", "statements": [ { "expression": { "arguments": [ { - "id": 295, + "id": 290, "isConstant": false, "isLValue": false, "isPure": false, @@ -4304,29 +4228,29 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "4356:28:0", + "src": "4318:28:0", "subExpression": { "expression": { "baseExpression": { - "id": 291, + "id": 286, "name": "order", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 24, - "src": "4357:5:0", + "src": "4319:5:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$831_storage_$", "typeString": "mapping(bytes32 => struct IGateway.Order storage ref)" } }, - "id": 293, + "id": 288, "indexExpression": { - "id": 292, + "id": 287, "name": "_orderId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 279, - "src": "4363:8:0", + "referencedDeclaration": 274, + "src": "4325:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -4337,22 +4261,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4357:15:0", + "src": "4319:15:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage", + "typeIdentifier": "t_struct$_Order_$831_storage", "typeString": "struct IGateway.Order storage ref" } }, - "id": 294, + "id": 289, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "4373:11:0", + "memberLocation": "4335:11:0", "memberName": "isFulfilled", "nodeType": "MemberAccess", - "referencedDeclaration": 825, - "src": "4357:27:0", + "referencedDeclaration": 822, + "src": "4319:27:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -4365,14 +4289,14 @@ }, { "hexValue": "4f7264657246756c66696c6c6564", - "id": 296, + "id": 291, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "4386:16:0", + "src": "4348:16:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_84045048554d058b8a53b78300214112125a1eccddd735f23a805c1c4be2d6f5", "typeString": "literal_string \"OrderFulfilled\"" @@ -4391,7 +4315,7 @@ "typeString": "literal_string \"OrderFulfilled\"" } ], - "id": 290, + "id": 285, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -4399,13 +4323,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "4348:7:0", + "src": "4310:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 297, + "id": 292, "isConstant": false, "isLValue": false, "isPure": false, @@ -4414,22 +4338,22 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4348:55:0", + "src": "4310:55:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 298, + "id": 293, "nodeType": "ExpressionStatement", - "src": "4348:55:0" + "src": "4310:55:0" }, { "expression": { "arguments": [ { - "id": 304, + "id": 299, "isConstant": false, "isLValue": false, "isPure": false, @@ -4437,29 +4361,29 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "4415:27:0", + "src": "4377:27:0", "subExpression": { "expression": { "baseExpression": { - "id": 300, + "id": 295, "name": "order", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 24, - "src": "4416:5:0", + "src": "4378:5:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$831_storage_$", "typeString": "mapping(bytes32 => struct IGateway.Order storage ref)" } }, - "id": 302, + "id": 297, "indexExpression": { - "id": 301, + "id": 296, "name": "_orderId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 279, - "src": "4422:8:0", + "referencedDeclaration": 274, + "src": "4384:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -4470,22 +4394,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4416:15:0", + "src": "4378:15:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage", + "typeIdentifier": "t_struct$_Order_$831_storage", "typeString": "struct IGateway.Order storage ref" } }, - "id": 303, + "id": 298, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "4432:10:0", + "memberLocation": "4394:10:0", "memberName": "isRefunded", "nodeType": "MemberAccess", - "referencedDeclaration": 827, - "src": "4416:26:0", + "referencedDeclaration": 824, + "src": "4378:26:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -4498,14 +4422,14 @@ }, { "hexValue": "4f72646572526566756e646564", - "id": 305, + "id": 300, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "4444:15:0", + "src": "4406:15:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_0ab1527a936433fc64df27b599aa49d8cbaac3a88b1b3888cf4384b9e8bea9cd", "typeString": "literal_string \"OrderRefunded\"" @@ -4524,7 +4448,7 @@ "typeString": "literal_string \"OrderRefunded\"" } ], - "id": 299, + "id": 294, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -4532,13 +4456,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "4407:7:0", + "src": "4369:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 306, + "id": 301, "isConstant": false, "isLValue": false, "isPure": false, @@ -4547,31 +4471,31 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4407:53:0", + "src": "4369:53:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 307, + "id": 302, "nodeType": "ExpressionStatement", - "src": "4407:53:0" + "src": "4369:53:0" }, { "assignments": [ - 309 + 304 ], "declarations": [ { "constant": false, - "id": 309, + "id": 304, "mutability": "mutable", "name": "token", - "nameLocation": "4505:5:0", + "nameLocation": "4467:5:0", "nodeType": "VariableDeclaration", - "scope": 428, - "src": "4497:13:0", + "scope": 425, + "src": "4459:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4579,10 +4503,10 @@ "typeString": "address" }, "typeName": { - "id": 308, + "id": 303, "name": "address", "nodeType": "ElementaryTypeName", - "src": "4497:7:0", + "src": "4459:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -4592,29 +4516,29 @@ "visibility": "internal" } ], - "id": 314, + "id": 309, "initialValue": { "expression": { "baseExpression": { - "id": 310, + "id": 305, "name": "order", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 24, - "src": "4513:5:0", + "src": "4475:5:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$831_storage_$", "typeString": "mapping(bytes32 => struct IGateway.Order storage ref)" } }, - "id": 312, + "id": 307, "indexExpression": { - "id": 311, + "id": 306, "name": "_orderId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 279, - "src": "4519:8:0", + "referencedDeclaration": 274, + "src": "4481:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -4625,33 +4549,33 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4513:15:0", + "src": "4475:15:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage", + "typeIdentifier": "t_struct$_Order_$831_storage", "typeString": "struct IGateway.Order storage ref" } }, - "id": 313, + "id": 308, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "4529:5:0", + "memberLocation": "4491:5:0", "memberName": "token", "nodeType": "MemberAccess", - "referencedDeclaration": 817, - "src": "4513:21:0", + "referencedDeclaration": 814, + "src": "4475:21:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "VariableDeclarationStatement", - "src": "4497:37:0" + "src": "4459:37:0" }, { "expression": { - "id": 320, + "id": 315, "isConstant": false, "isLValue": false, "isPure": false, @@ -4659,25 +4583,25 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 315, + "id": 310, "name": "order", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 24, - "src": "4601:5:0", + "src": "4563:5:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$831_storage_$", "typeString": "mapping(bytes32 => struct IGateway.Order storage ref)" } }, - "id": 317, + "id": 312, "indexExpression": { - "id": 316, + "id": 311, "name": "_orderId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 279, - "src": "4607:8:0", + "referencedDeclaration": 274, + "src": "4569:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -4688,22 +4612,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4601:15:0", + "src": "4563:15:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage", + "typeIdentifier": "t_struct$_Order_$831_storage", "typeString": "struct IGateway.Order storage ref" } }, - "id": 318, + "id": 313, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "4617:10:0", + "memberLocation": "4579:10:0", "memberName": "currentBPS", "nodeType": "MemberAccess", - "referencedDeclaration": 831, - "src": "4601:26:0", + "referencedDeclaration": 828, + "src": "4563:26:0", "typeDescriptions": { "typeIdentifier": "t_uint96", "typeString": "uint96" @@ -4712,26 +4636,26 @@ "nodeType": "Assignment", "operator": "-=", "rightHandSide": { - "id": 319, + "id": 314, "name": "_settlePercent", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 283, - "src": "4631:14:0", + "referencedDeclaration": 278, + "src": "4593:14:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } }, - "src": "4601:44:0", + "src": "4563:44:0", "typeDescriptions": { "typeIdentifier": "t_uint96", "typeString": "uint96" } }, - "id": 321, + "id": 316, "nodeType": "ExpressionStatement", - "src": "4601:44:0" + "src": "4563:44:0" }, { "condition": { @@ -4739,7 +4663,7 @@ "typeIdentifier": "t_uint96", "typeString": "uint96" }, - "id": 327, + "id": 322, "isConstant": false, "isLValue": false, "isPure": false, @@ -4747,25 +4671,25 @@ "leftExpression": { "expression": { "baseExpression": { - "id": 322, + "id": 317, "name": "order", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 24, - "src": "4654:5:0", + "src": "4616:5:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$831_storage_$", "typeString": "mapping(bytes32 => struct IGateway.Order storage ref)" } }, - "id": 324, + "id": 319, "indexExpression": { - "id": 323, + "id": 318, "name": "_orderId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 279, - "src": "4660:8:0", + "referencedDeclaration": 274, + "src": "4622:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -4776,22 +4700,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4654:15:0", + "src": "4616:15:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage", + "typeIdentifier": "t_struct$_Order_$831_storage", "typeString": "struct IGateway.Order storage ref" } }, - "id": 325, + "id": 320, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "4670:10:0", + "memberLocation": "4632:10:0", "memberName": "currentBPS", "nodeType": "MemberAccess", - "referencedDeclaration": 831, - "src": "4654:26:0", + "referencedDeclaration": 828, + "src": "4616:26:0", "typeDescriptions": { "typeIdentifier": "t_uint96", "typeString": "uint96" @@ -4801,37 +4725,37 @@ "operator": "==", "rightExpression": { "hexValue": "30", - "id": 326, + "id": 321, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "4684:1:0", + "src": "4646:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "4654:31:0", + "src": "4616:31:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 391, + "id": 367, "nodeType": "IfStatement", - "src": "4650:604:0", + "src": "4612:453:0", "trueBody": { - "id": 390, + "id": 366, "nodeType": "Block", - "src": "4687:567:0", + "src": "4649:416:0", "statements": [ { "expression": { - "id": 333, + "id": 328, "isConstant": false, "isLValue": false, "isPure": false, @@ -4839,25 +4763,25 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 328, + "id": 323, "name": "order", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 24, - "src": "4737:5:0", + "src": "4699:5:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$831_storage_$", "typeString": "mapping(bytes32 => struct IGateway.Order storage ref)" } }, - "id": 330, + "id": 325, "indexExpression": { - "id": 329, + "id": 324, "name": "_orderId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 279, - "src": "4743:8:0", + "referencedDeclaration": 274, + "src": "4705:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -4868,22 +4792,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4737:15:0", + "src": "4699:15:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage", + "typeIdentifier": "t_struct$_Order_$831_storage", "typeString": "struct IGateway.Order storage ref" } }, - "id": 331, + "id": 326, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "4753:11:0", + "memberLocation": "4715:11:0", "memberName": "isFulfilled", "nodeType": "MemberAccess", - "referencedDeclaration": 825, - "src": "4737:27:0", + "referencedDeclaration": 822, + "src": "4699:27:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -4893,29 +4817,29 @@ "operator": "=", "rightHandSide": { "hexValue": "74727565", - "id": 332, + "id": 327, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "4767:4:0", + "src": "4729:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "true" }, - "src": "4737:34:0", + "src": "4699:34:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 334, + "id": 329, "nodeType": "ExpressionStatement", - "src": "4737:34:0" + "src": "4699:34:0" }, { "condition": { @@ -4923,7 +4847,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 340, + "id": 335, "isConstant": false, "isLValue": false, "isPure": false, @@ -4931,25 +4855,25 @@ "leftExpression": { "expression": { "baseExpression": { - "id": 335, + "id": 330, "name": "order", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 24, - "src": "4781:5:0", + "src": "4743:5:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$831_storage_$", "typeString": "mapping(bytes32 => struct IGateway.Order storage ref)" } }, - "id": 337, + "id": 332, "indexExpression": { - "id": 336, + "id": 331, "name": "_orderId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 279, - "src": "4787:8:0", + "referencedDeclaration": 274, + "src": "4749:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -4960,22 +4884,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4781:15:0", + "src": "4743:15:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage", + "typeIdentifier": "t_struct$_Order_$831_storage", "typeString": "struct IGateway.Order storage ref" } }, - "id": 338, + "id": 333, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "4797:9:0", + "memberLocation": "4759:9:0", "memberName": "senderFee", "nodeType": "MemberAccess", - "referencedDeclaration": 821, - "src": "4781:25:0", + "referencedDeclaration": 818, + "src": "4743:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4985,33 +4909,33 @@ "operator": "!=", "rightExpression": { "hexValue": "30", - "id": 339, + "id": 334, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "4810:1:0", + "src": "4772:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "4781:30:0", + "src": "4743:30:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 370, + "id": 365, "nodeType": "IfStatement", - "src": "4777:321:0", + "src": "4739:321:0", "trueBody": { - "id": 369, + "id": 364, "nodeType": "Block", - "src": "4813:285:0", + "src": "4775:285:0", "statements": [ { "expression": { @@ -5019,25 +4943,25 @@ { "expression": { "baseExpression": { - "id": 348, + "id": 343, "name": "order", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 24, - "src": "4891:5:0", + "src": "4853:5:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$831_storage_$", "typeString": "mapping(bytes32 => struct IGateway.Order storage ref)" } }, - "id": 350, + "id": 345, "indexExpression": { - "id": 349, + "id": 344, "name": "_orderId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 279, - "src": "4897:8:0", + "referencedDeclaration": 274, + "src": "4859:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -5048,22 +4972,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4891:15:0", + "src": "4853:15:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage", + "typeIdentifier": "t_struct$_Order_$831_storage", "typeString": "struct IGateway.Order storage ref" } }, - "id": 351, + "id": 346, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "4907:18:0", + "memberLocation": "4869:18:0", "memberName": "senderFeeRecipient", "nodeType": "MemberAccess", - "referencedDeclaration": 819, - "src": "4891:34:0", + "referencedDeclaration": 816, + "src": "4853:34:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5072,25 +4996,25 @@ { "expression": { "baseExpression": { - "id": 352, + "id": 347, "name": "order", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 24, - "src": "4932:5:0", + "src": "4894:5:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$831_storage_$", "typeString": "mapping(bytes32 => struct IGateway.Order storage ref)" } }, - "id": 354, + "id": 349, "indexExpression": { - "id": 353, + "id": 348, "name": "_orderId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 279, - "src": "4938:8:0", + "referencedDeclaration": 274, + "src": "4900:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -5101,22 +5025,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4932:15:0", + "src": "4894:15:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage", + "typeIdentifier": "t_struct$_Order_$831_storage", "typeString": "struct IGateway.Order storage ref" } }, - "id": 355, + "id": 350, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "4948:9:0", + "memberLocation": "4910:9:0", "memberName": "senderFee", "nodeType": "MemberAccess", - "referencedDeclaration": 821, - "src": "4932:25:0", + "referencedDeclaration": 818, + "src": "4894:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5139,25 +5063,25 @@ { "expression": { "baseExpression": { - "id": 342, + "id": 337, "name": "order", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 24, - "src": "4853:5:0", + "src": "4815:5:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$831_storage_$", "typeString": "mapping(bytes32 => struct IGateway.Order storage ref)" } }, - "id": 344, + "id": 339, "indexExpression": { - "id": 343, + "id": 338, "name": "_orderId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 279, - "src": "4859:8:0", + "referencedDeclaration": 274, + "src": "4821:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -5168,22 +5092,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4853:15:0", + "src": "4815:15:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage", + "typeIdentifier": "t_struct$_Order_$831_storage", "typeString": "struct IGateway.Order storage ref" } }, - "id": 345, + "id": 340, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "4869:5:0", + "memberLocation": "4831:5:0", "memberName": "token", "nodeType": "MemberAccess", - "referencedDeclaration": 817, - "src": "4853:21:0", + "referencedDeclaration": 814, + "src": "4815:21:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5197,18 +5121,18 @@ "typeString": "address" } ], - "id": 341, + "id": 336, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2557, - "src": "4846:6:0", + "referencedDeclaration": 2554, + "src": "4808:6:0", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$2557_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$2554_$", "typeString": "type(contract IERC20)" } }, - "id": 346, + "id": 341, "isConstant": false, "isLValue": false, "isPure": false, @@ -5217,29 +5141,29 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4846:29:0", + "src": "4808:29:0", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$2557", + "typeIdentifier": "t_contract$_IERC20_$2554", "typeString": "contract IERC20" } }, - "id": 347, + "id": 342, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "4876:8:0", + "memberLocation": "4838:8:0", "memberName": "transfer", "nodeType": "MemberAccess", - "referencedDeclaration": 2524, - "src": "4846:38:0", + "referencedDeclaration": 2521, + "src": "4808:38:0", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,uint256) external returns (bool)" } }, - "id": 356, + "id": 351, "isConstant": false, "isLValue": false, "isPure": false, @@ -5248,16 +5172,16 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4846:117:0", + "src": "4808:117:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 357, + "id": 352, "nodeType": "ExpressionStatement", - "src": "4846:117:0" + "src": "4808:117:0" }, { "eventCall": { @@ -5265,25 +5189,25 @@ { "expression": { "baseExpression": { - "id": 359, + "id": 354, "name": "order", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 24, - "src": "5020:5:0", + "src": "4982:5:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$831_storage_$", "typeString": "mapping(bytes32 => struct IGateway.Order storage ref)" } }, - "id": 361, + "id": 356, "indexExpression": { - "id": 360, + "id": 355, "name": "_orderId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 279, - "src": "5026:8:0", + "referencedDeclaration": 274, + "src": "4988:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -5294,22 +5218,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "5020:15:0", + "src": "4982:15:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage", + "typeIdentifier": "t_struct$_Order_$831_storage", "typeString": "struct IGateway.Order storage ref" } }, - "id": 362, + "id": 357, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "5036:18:0", + "memberLocation": "4998:18:0", "memberName": "senderFeeRecipient", "nodeType": "MemberAccess", - "referencedDeclaration": 819, - "src": "5020:34:0", + "referencedDeclaration": 816, + "src": "4982:34:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5318,25 +5242,25 @@ { "expression": { "baseExpression": { - "id": 363, + "id": 358, "name": "order", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 24, - "src": "5061:5:0", + "src": "5023:5:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$831_storage_$", "typeString": "mapping(bytes32 => struct IGateway.Order storage ref)" } }, - "id": 365, + "id": 360, "indexExpression": { - "id": 364, + "id": 359, "name": "_orderId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 279, - "src": "5067:8:0", + "referencedDeclaration": 274, + "src": "5029:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -5347,22 +5271,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "5061:15:0", + "src": "5023:15:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage", + "typeIdentifier": "t_struct$_Order_$831_storage", "typeString": "struct IGateway.Order storage ref" } }, - "id": 366, + "id": 361, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "5077:9:0", + "memberLocation": "5039:9:0", "memberName": "senderFee", "nodeType": "MemberAccess", - "referencedDeclaration": 821, - "src": "5061:25:0", + "referencedDeclaration": 818, + "src": "5023:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5380,18 +5304,18 @@ "typeString": "uint256" } ], - "id": 358, + "id": 353, "name": "SenderFeeTransferred", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 813, - "src": "4993:20:0", + "referencedDeclaration": 810, + "src": "4955:20:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 367, + "id": 362, "isConstant": false, "isLValue": false, "isPure": false, @@ -5400,27 +5324,75 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4993:99:0", + "src": "4955:99:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 368, + "id": 363, "nodeType": "EmitStatement", - "src": "4988:104:0" + "src": "4950:104:0" } ] } + } + ] + } + }, + { + "assignments": [ + 369 + ], + "declarations": [ + { + "constant": false, + "id": 369, + "mutability": "mutable", + "name": "liquidityProviderAmount", + "nameLocation": "5113:23:0", + "nodeType": "VariableDeclaration", + "scope": 425, + "src": "5105:31:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 368, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5105:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } }, - { - "condition": { + "visibility": "internal" + } + ], + "id": 379, + "initialValue": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 378, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "components": [ + { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 376, + "id": 375, "isConstant": false, "isLValue": false, "isPure": false, @@ -5428,25 +5400,25 @@ "leftExpression": { "expression": { "baseExpression": { - "id": 371, + "id": 370, "name": "order", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 24, - "src": "5107:5:0", + "src": "5140:5:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$831_storage_$", "typeString": "mapping(bytes32 => struct IGateway.Order storage ref)" } }, - "id": 373, + "id": 372, "indexExpression": { - "id": 372, + "id": 371, "name": "_orderId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 279, - "src": "5113:8:0", + "referencedDeclaration": 274, + "src": "5146:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -5457,243 +5429,182 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "5107:15:0", + "src": "5140:15:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage", + "typeIdentifier": "t_struct$_Order_$831_storage", "typeString": "struct IGateway.Order storage ref" } }, - "id": 374, + "id": 373, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "5123:11:0", - "memberName": "protocolFee", + "memberLocation": "5156:6:0", + "memberName": "amount", "nodeType": "MemberAccess", - "referencedDeclaration": 823, - "src": "5107:27:0", + "referencedDeclaration": 830, + "src": "5140:22:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", - "operator": "!=", + "operator": "*", "rightExpression": { - "hexValue": "30", - "id": 375, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5138:1:0", + "id": 374, + "name": "_settlePercent", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 278, + "src": "5165:14:0", "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } }, - "src": "5107:32:0", + "src": "5140:39:0", "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 376, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "5139:41:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "/", + "rightExpression": { + "id": 377, + "name": "MAX_BPS", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 586, + "src": "5183:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5139:51:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "5105:85:0" + }, + { + "expression": { + "id": 385, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 380, + "name": "order", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24, + "src": "5194:5:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$831_storage_$", + "typeString": "mapping(bytes32 => struct IGateway.Order storage ref)" } }, - "id": 389, - "nodeType": "IfStatement", - "src": "5103:147:0", - "trueBody": { - "id": 388, - "nodeType": "Block", - "src": "5141:109:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 381, - "name": "treasuryAddress", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 593, - "src": "5199:15:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "expression": { - "baseExpression": { - "id": 382, - "name": "order", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 24, - "src": "5216:5:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", - "typeString": "mapping(bytes32 => struct IGateway.Order storage ref)" - } - }, - "id": 384, - "indexExpression": { - "id": 383, - "name": "_orderId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 279, - "src": "5222:8:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "5216:15:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage", - "typeString": "struct IGateway.Order storage ref" - } - }, - "id": 385, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "5232:11:0", - "memberName": "protocolFee", - "nodeType": "MemberAccess", - "referencedDeclaration": 823, - "src": "5216:27:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "arguments": [ - { - "id": 378, - "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 309, - "src": "5183:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 377, - "name": "IERC20", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2557, - "src": "5176:6:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$2557_$", - "typeString": "type(contract IERC20)" - } - }, - "id": 379, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "5176:13:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$2557", - "typeString": "contract IERC20" - } - }, - "id": 380, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "5190:8:0", - "memberName": "transfer", - "nodeType": "MemberAccess", - "referencedDeclaration": 2524, - "src": "5176:22:0", - "typeDescriptions": { - "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", - "typeString": "function (address,uint256) external returns (bool)" - } - }, - "id": 386, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "5176:68:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 387, - "nodeType": "ExpressionStatement", - "src": "5176:68:0" - } - ] + "id": 382, + "indexExpression": { + "id": 381, + "name": "_orderId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 274, + "src": "5200:8:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5194:15:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Order_$831_storage", + "typeString": "struct IGateway.Order storage ref" } + }, + "id": 383, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "5210:6:0", + "memberName": "amount", + "nodeType": "MemberAccess", + "referencedDeclaration": 830, + "src": "5194:22:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" } - ] - } + }, + "nodeType": "Assignment", + "operator": "-=", + "rightHandSide": { + "id": 384, + "name": "liquidityProviderAmount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 369, + "src": "5220:23:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5194:49:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 386, + "nodeType": "ExpressionStatement", + "src": "5194:49:0" }, { "assignments": [ - 393 + 388 ], "declarations": [ { "constant": false, - "id": 393, + "id": 388, "mutability": "mutable", - "name": "liquidityProviderAmount", - "nameLocation": "5302:23:0", + "name": "protocolFee", + "nameLocation": "5256:11:0", "nodeType": "VariableDeclaration", - "scope": 428, - "src": "5294:31:0", + "scope": 425, + "src": "5248:19:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5701,10 +5612,10 @@ "typeString": "uint256" }, "typeName": { - "id": 392, + "id": 387, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5294:7:0", + "src": "5248:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5713,13 +5624,13 @@ "visibility": "internal" } ], - "id": 403, + "id": 395, "initialValue": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 402, + "id": 394, "isConstant": false, "isLValue": false, "isPure": false, @@ -5731,59 +5642,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 399, + "id": 391, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "expression": { - "baseExpression": { - "id": 394, - "name": "order", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 24, - "src": "5329:5:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", - "typeString": "mapping(bytes32 => struct IGateway.Order storage ref)" - } - }, - "id": 396, - "indexExpression": { - "id": 395, - "name": "_orderId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 279, - "src": "5335:8:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "5329:15:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage", - "typeString": "struct IGateway.Order storage ref" - } - }, - "id": 397, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "5345:6:0", - "memberName": "amount", - "nodeType": "MemberAccess", - "referencedDeclaration": 833, - "src": "5329:22:0", + "id": 389, + "name": "liquidityProviderAmount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 369, + "src": "5271:23:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5792,32 +5662,32 @@ "nodeType": "BinaryOperation", "operator": "*", "rightExpression": { - "id": 398, - "name": "_settlePercent", + "id": 390, + "name": "protocolFeePercent", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 283, - "src": "5354:14:0", + "referencedDeclaration": 588, + "src": "5297:18:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } }, - "src": "5329:39:0", + "src": "5271:44:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 400, + "id": 392, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "5328:41:0", + "src": "5270:46:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5826,132 +5696,214 @@ "nodeType": "BinaryOperation", "operator": "/", "rightExpression": { - "id": 401, + "id": 393, "name": "MAX_BPS", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 589, - "src": "5372:7:0", + "referencedDeclaration": 586, + "src": "5319:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "5328:51:0", + "src": "5270:56:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "5294:85:0" + "src": "5248:78:0" }, { "expression": { - "id": 409, + "id": 398, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { + "id": 396, + "name": "liquidityProviderAmount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 369, + "src": "5330:23:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "-=", + "rightHandSide": { + "id": 397, + "name": "protocolFee", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 388, + "src": "5357:11:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5330:38:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 399, + "nodeType": "ExpressionStatement", + "src": "5330:38:0" + }, + { + "expression": { + "arguments": [ + { + "id": 404, + "name": "treasuryAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 590, + "src": "5423:15:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 405, + "name": "protocolFee", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 388, + "src": "5440:11:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], "expression": { - "baseExpression": { - "id": 404, - "name": "order", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 24, - "src": "5383:5:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", - "typeString": "mapping(bytes32 => struct IGateway.Order storage ref)" + "arguments": [ + { + "id": 401, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 304, + "src": "5407:5:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } } - }, - "id": 406, - "indexExpression": { - "id": 405, - "name": "_orderId", + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 400, + "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 279, - "src": "5389:8:0", + "referencedDeclaration": 2554, + "src": "5400:6:0", "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" + "typeIdentifier": "t_type$_t_contract$_IERC20_$2554_$", + "typeString": "type(contract IERC20)" } }, + "id": 402, "isConstant": false, - "isLValue": true, + "isLValue": false, "isPure": false, + "kind": "typeConversion", "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "5383:15:0", + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5400:13:0", + "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage", - "typeString": "struct IGateway.Order storage ref" + "typeIdentifier": "t_contract$_IERC20_$2554", + "typeString": "contract IERC20" } }, - "id": 407, + "id": 403, "isConstant": false, - "isLValue": true, + "isLValue": false, "isPure": false, - "lValueRequested": true, - "memberLocation": "5399:6:0", - "memberName": "amount", + "lValueRequested": false, + "memberLocation": "5414:8:0", + "memberName": "transfer", "nodeType": "MemberAccess", - "referencedDeclaration": 833, - "src": "5383:22:0", + "referencedDeclaration": 2521, + "src": "5400:22:0", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "-=", - "rightHandSide": { - "id": 408, - "name": "liquidityProviderAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 393, - "src": "5409:23:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", + "typeString": "function (address,uint256) external returns (bool)" } }, - "src": "5383:49:0", + "id": 406, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5400:52:0", + "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_bool", + "typeString": "bool" } }, - "id": 410, + "id": 407, "nodeType": "ExpressionStatement", - "src": "5383:49:0" + "src": "5400:52:0" }, { "expression": { "arguments": [ { - "id": 415, + "id": 412, "name": "_liquidityProvider", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 281, - "src": "5459:18:0", + "referencedDeclaration": 276, + "src": "5480:18:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 416, + "id": 413, "name": "liquidityProviderAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 393, - "src": "5479:23:0", + "referencedDeclaration": 369, + "src": "5500:23:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5972,12 +5924,12 @@ "expression": { "arguments": [ { - "id": 412, + "id": 409, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 309, - "src": "5443:5:0", + "referencedDeclaration": 304, + "src": "5464:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5991,18 +5943,18 @@ "typeString": "address" } ], - "id": 411, + "id": 408, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2557, - "src": "5436:6:0", + "referencedDeclaration": 2554, + "src": "5457:6:0", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$2557_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$2554_$", "typeString": "type(contract IERC20)" } }, - "id": 413, + "id": 410, "isConstant": false, "isLValue": false, "isPure": false, @@ -6011,29 +5963,29 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5436:13:0", + "src": "5457:13:0", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$2557", + "typeIdentifier": "t_contract$_IERC20_$2554", "typeString": "contract IERC20" } }, - "id": 414, + "id": 411, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "5450:8:0", + "memberLocation": "5471:8:0", "memberName": "transfer", "nodeType": "MemberAccess", - "referencedDeclaration": 2524, - "src": "5436:22:0", + "referencedDeclaration": 2521, + "src": "5457:22:0", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,uint256) external returns (bool)" } }, - "id": 417, + "id": 414, "isConstant": false, "isLValue": false, "isPure": false, @@ -6042,63 +5994,63 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5436:67:0", + "src": "5457:67:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 418, + "id": 415, "nodeType": "ExpressionStatement", - "src": "5436:67:0" + "src": "5457:67:0" }, { "eventCall": { "arguments": [ { - "id": 420, + "id": 417, "name": "_splitOrderId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 277, - "src": "5550:13:0", + "referencedDeclaration": 272, + "src": "5571:13:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 421, + "id": 418, "name": "_orderId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 279, - "src": "5565:8:0", + "referencedDeclaration": 274, + "src": "5586:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 422, + "id": 419, "name": "_liquidityProvider", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 281, - "src": "5575:18:0", + "referencedDeclaration": 276, + "src": "5596:18:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 423, + "id": 420, "name": "_settlePercent", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 283, - "src": "5595:14:0", + "referencedDeclaration": 278, + "src": "5616:14:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -6124,18 +6076,18 @@ "typeString": "uint64" } ], - "id": 419, + "id": 416, "name": "OrderSettled", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 799, - "src": "5537:12:0", + "referencedDeclaration": 796, + "src": "5558:12:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_bytes32_$_t_address_$_t_uint96_$returns$__$", "typeString": "function (bytes32,bytes32,address,uint96)" } }, - "id": 424, + "id": 421, "isConstant": false, "isLValue": false, "isPure": false, @@ -6144,85 +6096,85 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5537:73:0", + "src": "5558:73:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 425, + "id": 422, "nodeType": "EmitStatement", - "src": "5532:78:0" + "src": "5553:78:0" }, { "expression": { "hexValue": "74727565", - "id": 426, + "id": 423, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "5622:4:0", + "src": "5643:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "true" }, - "functionReturnParameters": 289, - "id": 427, + "functionReturnParameters": 284, + "id": 424, "nodeType": "Return", - "src": "5615:11:0" + "src": "5636:11:0" } ] }, "documentation": { - "id": 275, + "id": 270, "nodeType": "StructuredDocumentation", - "src": "4099:34:0", + "src": "4061:34:0", "text": "@dev See {settle-IGateway}. " }, "functionSelector": "f22ee704", - "id": 429, + "id": 426, "implemented": true, "kind": "function", "modifiers": [ { - "id": 286, + "id": 281, "kind": "modifierInvocation", "modifierName": { - "id": 285, + "id": 280, "name": "onlyAggregator", "nameLocations": [ - "4263:14:0" + "4225:14:0" ], "nodeType": "IdentifierPath", "referencedDeclaration": 70, - "src": "4263:14:0" + "src": "4225:14:0" }, "nodeType": "ModifierInvocation", - "src": "4263:14:0" + "src": "4225:14:0" } ], "name": "settle", - "nameLocation": "4144:6:0", + "nameLocation": "4106:6:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 284, + "id": 279, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 277, + "id": 272, "mutability": "mutable", "name": "_splitOrderId", - "nameLocation": "4162:13:0", + "nameLocation": "4124:13:0", "nodeType": "VariableDeclaration", - "scope": 429, - "src": "4154:21:0", + "scope": 426, + "src": "4116:21:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6230,10 +6182,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 276, + "id": 271, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "4154:7:0", + "src": "4116:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -6243,13 +6195,13 @@ }, { "constant": false, - "id": 279, + "id": 274, "mutability": "mutable", "name": "_orderId", - "nameLocation": "4187:8:0", + "nameLocation": "4149:8:0", "nodeType": "VariableDeclaration", - "scope": 429, - "src": "4179:16:0", + "scope": 426, + "src": "4141:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6257,10 +6209,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 278, + "id": 273, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "4179:7:0", + "src": "4141:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -6270,13 +6222,13 @@ }, { "constant": false, - "id": 281, + "id": 276, "mutability": "mutable", "name": "_liquidityProvider", - "nameLocation": "4207:18:0", + "nameLocation": "4169:18:0", "nodeType": "VariableDeclaration", - "scope": 429, - "src": "4199:26:0", + "scope": 426, + "src": "4161:26:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6284,10 +6236,10 @@ "typeString": "address" }, "typeName": { - "id": 280, + "id": 275, "name": "address", "nodeType": "ElementaryTypeName", - "src": "4199:7:0", + "src": "4161:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -6298,13 +6250,13 @@ }, { "constant": false, - "id": 283, + "id": 278, "mutability": "mutable", "name": "_settlePercent", - "nameLocation": "4236:14:0", + "nameLocation": "4198:14:0", "nodeType": "VariableDeclaration", - "scope": 429, - "src": "4229:21:0", + "scope": 426, + "src": "4191:21:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6312,10 +6264,10 @@ "typeString": "uint64" }, "typeName": { - "id": 282, + "id": 277, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "4229:6:0", + "src": "4191:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -6324,21 +6276,21 @@ "visibility": "internal" } ], - "src": "4150:103:0" + "src": "4112:103:0" }, "returnParameters": { - "id": 289, + "id": 284, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 288, + "id": 283, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 429, - "src": "4287:4:0", + "scope": 426, + "src": "4249:4:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6346,10 +6298,10 @@ "typeString": "bool" }, "typeName": { - "id": 287, + "id": 282, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "4287:4:0", + "src": "4249:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -6358,28 +6310,28 @@ "visibility": "internal" } ], - "src": "4286:6:0" + "src": "4248:6:0" }, - "scope": 582, - "src": "4135:1495:0", + "scope": 579, + "src": "4097:1554:0", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { "baseFunctions": [ - 878 + 875 ], "body": { - "id": 534, + "id": 531, "nodeType": "Block", - "src": "5756:839:0", + "src": "5777:839:0", "statements": [ { "expression": { "arguments": [ { - "id": 446, + "id": 443, "isConstant": false, "isLValue": false, "isPure": false, @@ -6387,29 +6339,29 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "5819:28:0", + "src": "5840:28:0", "subExpression": { "expression": { "baseExpression": { - "id": 442, + "id": 439, "name": "order", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 24, - "src": "5820:5:0", + "src": "5841:5:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$831_storage_$", "typeString": "mapping(bytes32 => struct IGateway.Order storage ref)" } }, - "id": 444, + "id": 441, "indexExpression": { - "id": 443, + "id": 440, "name": "_orderId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 434, - "src": "5826:8:0", + "referencedDeclaration": 431, + "src": "5847:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -6420,22 +6372,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "5820:15:0", + "src": "5841:15:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage", + "typeIdentifier": "t_struct$_Order_$831_storage", "typeString": "struct IGateway.Order storage ref" } }, - "id": 445, + "id": 442, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "5836:11:0", + "memberLocation": "5857:11:0", "memberName": "isFulfilled", "nodeType": "MemberAccess", - "referencedDeclaration": 825, - "src": "5820:27:0", + "referencedDeclaration": 822, + "src": "5841:27:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -6448,14 +6400,14 @@ }, { "hexValue": "4f7264657246756c66696c6c6564", - "id": 447, + "id": 444, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "5849:16:0", + "src": "5870:16:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_84045048554d058b8a53b78300214112125a1eccddd735f23a805c1c4be2d6f5", "typeString": "literal_string \"OrderFulfilled\"" @@ -6474,7 +6426,7 @@ "typeString": "literal_string \"OrderFulfilled\"" } ], - "id": 441, + "id": 438, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -6482,13 +6434,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "5811:7:0", + "src": "5832:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 448, + "id": 445, "isConstant": false, "isLValue": false, "isPure": false, @@ -6497,22 +6449,22 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5811:55:0", + "src": "5832:55:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 449, + "id": 446, "nodeType": "ExpressionStatement", - "src": "5811:55:0" + "src": "5832:55:0" }, { "expression": { "arguments": [ { - "id": 455, + "id": 452, "isConstant": false, "isLValue": false, "isPure": false, @@ -6520,29 +6472,29 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "5878:27:0", + "src": "5899:27:0", "subExpression": { "expression": { "baseExpression": { - "id": 451, + "id": 448, "name": "order", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 24, - "src": "5879:5:0", + "src": "5900:5:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$831_storage_$", "typeString": "mapping(bytes32 => struct IGateway.Order storage ref)" } }, - "id": 453, + "id": 450, "indexExpression": { - "id": 452, + "id": 449, "name": "_orderId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 434, - "src": "5885:8:0", + "referencedDeclaration": 431, + "src": "5906:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -6553,22 +6505,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "5879:15:0", + "src": "5900:15:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage", + "typeIdentifier": "t_struct$_Order_$831_storage", "typeString": "struct IGateway.Order storage ref" } }, - "id": 454, + "id": 451, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "5895:10:0", + "memberLocation": "5916:10:0", "memberName": "isRefunded", "nodeType": "MemberAccess", - "referencedDeclaration": 827, - "src": "5879:26:0", + "referencedDeclaration": 824, + "src": "5900:26:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -6581,14 +6533,14 @@ }, { "hexValue": "4f72646572526566756e646564", - "id": 456, + "id": 453, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "5907:15:0", + "src": "5928:15:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_0ab1527a936433fc64df27b599aa49d8cbaac3a88b1b3888cf4384b9e8bea9cd", "typeString": "literal_string \"OrderRefunded\"" @@ -6607,7 +6559,7 @@ "typeString": "literal_string \"OrderRefunded\"" } ], - "id": 450, + "id": 447, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -6615,13 +6567,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "5870:7:0", + "src": "5891:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 457, + "id": 454, "isConstant": false, "isLValue": false, "isPure": false, @@ -6630,16 +6582,16 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5870:53:0", + "src": "5891:53:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 458, + "id": 455, "nodeType": "ExpressionStatement", - "src": "5870:53:0" + "src": "5891:53:0" }, { "expression": { @@ -6649,7 +6601,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 465, + "id": 462, "isConstant": false, "isLValue": false, "isPure": false, @@ -6657,25 +6609,25 @@ "leftExpression": { "expression": { "baseExpression": { - "id": 460, + "id": 457, "name": "order", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 24, - "src": "5935:5:0", + "src": "5956:5:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$831_storage_$", "typeString": "mapping(bytes32 => struct IGateway.Order storage ref)" } }, - "id": 462, + "id": 459, "indexExpression": { - "id": 461, + "id": 458, "name": "_orderId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 434, - "src": "5941:8:0", + "referencedDeclaration": 431, + "src": "5962:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -6686,22 +6638,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "5935:15:0", + "src": "5956:15:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage", + "typeIdentifier": "t_struct$_Order_$831_storage", "typeString": "struct IGateway.Order storage ref" } }, - "id": 463, + "id": 460, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "5951:11:0", + "memberLocation": "5972:11:0", "memberName": "protocolFee", "nodeType": "MemberAccess", - "referencedDeclaration": 823, - "src": "5935:27:0", + "referencedDeclaration": 820, + "src": "5956:27:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6710,18 +6662,18 @@ "nodeType": "BinaryOperation", "operator": ">=", "rightExpression": { - "id": 464, + "id": 461, "name": "_fee", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 432, - "src": "5966:4:0", + "referencedDeclaration": 429, + "src": "5987:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "5935:35:0", + "src": "5956:35:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -6729,14 +6681,14 @@ }, { "hexValue": "4665654578636565647350726f746f636f6c466565", - "id": 466, + "id": 463, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "5972:23:0", + "src": "5993:23:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_c06b87282d804789c7604f19c70a4ed32c29ae2e290ed8b49435ec1484c8a5de", "typeString": "literal_string \"FeeExceedsProtocolFee\"" @@ -6755,7 +6707,7 @@ "typeString": "literal_string \"FeeExceedsProtocolFee\"" } ], - "id": 459, + "id": 456, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -6763,13 +6715,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "5927:7:0", + "src": "5948:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 467, + "id": 464, "isConstant": false, "isLValue": false, "isPure": false, @@ -6778,39 +6730,39 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5927:69:0", + "src": "5948:69:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 468, + "id": 465, "nodeType": "ExpressionStatement", - "src": "5927:69:0" + "src": "5948:69:0" }, { "expression": { "arguments": [ { - "id": 476, + "id": 473, "name": "treasuryAddress", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 593, - "src": "6081:15:0", + "referencedDeclaration": 590, + "src": "6102:15:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 477, + "id": 474, "name": "_fee", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 432, - "src": "6098:4:0", + "referencedDeclaration": 429, + "src": "6119:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6833,25 +6785,25 @@ { "expression": { "baseExpression": { - "id": 470, + "id": 467, "name": "order", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 24, - "src": "6049:5:0", + "src": "6070:5:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$831_storage_$", "typeString": "mapping(bytes32 => struct IGateway.Order storage ref)" } }, - "id": 472, + "id": 469, "indexExpression": { - "id": 471, + "id": 468, "name": "_orderId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 434, - "src": "6055:8:0", + "referencedDeclaration": 431, + "src": "6076:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -6862,22 +6814,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6049:15:0", + "src": "6070:15:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage", + "typeIdentifier": "t_struct$_Order_$831_storage", "typeString": "struct IGateway.Order storage ref" } }, - "id": 473, + "id": 470, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "6065:5:0", + "memberLocation": "6086:5:0", "memberName": "token", "nodeType": "MemberAccess", - "referencedDeclaration": 817, - "src": "6049:21:0", + "referencedDeclaration": 814, + "src": "6070:21:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6891,18 +6843,18 @@ "typeString": "address" } ], - "id": 469, + "id": 466, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2557, - "src": "6042:6:0", + "referencedDeclaration": 2554, + "src": "6063:6:0", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$2557_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$2554_$", "typeString": "type(contract IERC20)" } }, - "id": 474, + "id": 471, "isConstant": false, "isLValue": false, "isPure": false, @@ -6911,29 +6863,29 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6042:29:0", + "src": "6063:29:0", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$2557", + "typeIdentifier": "t_contract$_IERC20_$2554", "typeString": "contract IERC20" } }, - "id": 475, + "id": 472, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "6072:8:0", + "memberLocation": "6093:8:0", "memberName": "transfer", "nodeType": "MemberAccess", - "referencedDeclaration": 2524, - "src": "6042:38:0", + "referencedDeclaration": 2521, + "src": "6063:38:0", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,uint256) external returns (bool)" } }, - "id": 478, + "id": 475, "isConstant": false, "isLValue": false, "isPure": false, @@ -6942,20 +6894,20 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6042:61:0", + "src": "6063:61:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 479, + "id": 476, "nodeType": "ExpressionStatement", - "src": "6042:61:0" + "src": "6063:61:0" }, { "expression": { - "id": 485, + "id": 482, "isConstant": false, "isLValue": false, "isPure": false, @@ -6963,25 +6915,25 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 480, + "id": 477, "name": "order", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 24, - "src": "6132:5:0", + "src": "6153:5:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$831_storage_$", "typeString": "mapping(bytes32 => struct IGateway.Order storage ref)" } }, - "id": 482, + "id": 479, "indexExpression": { - "id": 481, + "id": 478, "name": "_orderId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 434, - "src": "6138:8:0", + "referencedDeclaration": 431, + "src": "6159:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -6992,22 +6944,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6132:15:0", + "src": "6153:15:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage", + "typeIdentifier": "t_struct$_Order_$831_storage", "typeString": "struct IGateway.Order storage ref" } }, - "id": 483, + "id": 480, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "6148:10:0", + "memberLocation": "6169:10:0", "memberName": "isRefunded", "nodeType": "MemberAccess", - "referencedDeclaration": 827, - "src": "6132:26:0", + "referencedDeclaration": 824, + "src": "6153:26:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -7017,33 +6969,33 @@ "operator": "=", "rightHandSide": { "hexValue": "74727565", - "id": 484, + "id": 481, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "6161:4:0", + "src": "6182:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "true" }, - "src": "6132:33:0", + "src": "6153:33:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 486, + "id": 483, "nodeType": "ExpressionStatement", - "src": "6132:33:0" + "src": "6153:33:0" }, { "expression": { - "id": 492, + "id": 489, "isConstant": false, "isLValue": false, "isPure": false, @@ -7051,25 +7003,25 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 487, + "id": 484, "name": "order", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 24, - "src": "6169:5:0", + "src": "6190:5:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$831_storage_$", "typeString": "mapping(bytes32 => struct IGateway.Order storage ref)" } }, - "id": 489, + "id": 486, "indexExpression": { - "id": 488, + "id": 485, "name": "_orderId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 434, - "src": "6175:8:0", + "referencedDeclaration": 431, + "src": "6196:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -7080,22 +7032,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6169:15:0", + "src": "6190:15:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage", + "typeIdentifier": "t_struct$_Order_$831_storage", "typeString": "struct IGateway.Order storage ref" } }, - "id": 490, + "id": 487, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "6185:10:0", + "memberLocation": "6206:10:0", "memberName": "currentBPS", "nodeType": "MemberAccess", - "referencedDeclaration": 831, - "src": "6169:26:0", + "referencedDeclaration": 828, + "src": "6190:26:0", "typeDescriptions": { "typeIdentifier": "t_uint96", "typeString": "uint96" @@ -7105,44 +7057,44 @@ "operator": "=", "rightHandSide": { "hexValue": "30", - "id": 491, + "id": 488, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "6198:1:0", + "src": "6219:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "6169:30:0", + "src": "6190:30:0", "typeDescriptions": { "typeIdentifier": "t_uint96", "typeString": "uint96" } }, - "id": 493, + "id": 490, "nodeType": "ExpressionStatement", - "src": "6169:30:0" + "src": "6190:30:0" }, { "assignments": [ - 495 + 492 ], "declarations": [ { "constant": false, - "id": 495, + "id": 492, "mutability": "mutable", "name": "refundAmount", - "nameLocation": "6246:12:0", + "nameLocation": "6267:12:0", "nodeType": "VariableDeclaration", - "scope": 534, - "src": "6238:20:0", + "scope": 531, + "src": "6259:20:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7150,10 +7102,10 @@ "typeString": "uint256" }, "typeName": { - "id": 494, + "id": 491, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "6238:7:0", + "src": "6259:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7162,13 +7114,13 @@ "visibility": "internal" } ], - "id": 507, + "id": 504, "initialValue": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 506, + "id": 503, "isConstant": false, "isLValue": false, "isPure": false, @@ -7178,7 +7130,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 504, + "id": 501, "isConstant": false, "isLValue": false, "isPure": false, @@ -7186,25 +7138,25 @@ "leftExpression": { "expression": { "baseExpression": { - "id": 496, + "id": 493, "name": "order", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 24, - "src": "6261:5:0", + "src": "6282:5:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$831_storage_$", "typeString": "mapping(bytes32 => struct IGateway.Order storage ref)" } }, - "id": 498, + "id": 495, "indexExpression": { - "id": 497, + "id": 494, "name": "_orderId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 434, - "src": "6267:8:0", + "referencedDeclaration": 431, + "src": "6288:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -7215,22 +7167,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6261:15:0", + "src": "6282:15:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage", + "typeIdentifier": "t_struct$_Order_$831_storage", "typeString": "struct IGateway.Order storage ref" } }, - "id": 499, + "id": 496, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "6277:6:0", + "memberLocation": "6298:6:0", "memberName": "amount", "nodeType": "MemberAccess", - "referencedDeclaration": 833, - "src": "6261:22:0", + "referencedDeclaration": 830, + "src": "6282:22:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7241,25 +7193,25 @@ "rightExpression": { "expression": { "baseExpression": { - "id": 500, + "id": 497, "name": "order", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 24, - "src": "6286:5:0", + "src": "6307:5:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$831_storage_$", "typeString": "mapping(bytes32 => struct IGateway.Order storage ref)" } }, - "id": 502, + "id": 499, "indexExpression": { - "id": 501, + "id": 498, "name": "_orderId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 434, - "src": "6292:8:0", + "referencedDeclaration": 431, + "src": "6313:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -7270,28 +7222,28 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6286:15:0", + "src": "6307:15:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage", + "typeIdentifier": "t_struct$_Order_$831_storage", "typeString": "struct IGateway.Order storage ref" } }, - "id": 503, + "id": 500, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "6302:11:0", + "memberLocation": "6323:11:0", "memberName": "protocolFee", "nodeType": "MemberAccess", - "referencedDeclaration": 823, - "src": "6286:27:0", + "referencedDeclaration": 820, + "src": "6307:27:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "6261:52:0", + "src": "6282:52:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7300,25 +7252,25 @@ "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { - "id": 505, + "id": 502, "name": "_fee", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 432, - "src": "6316:4:0", + "referencedDeclaration": 429, + "src": "6337:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "6261:59:0", + "src": "6282:59:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "6238:82:0" + "src": "6259:82:0" }, { "expression": { @@ -7326,25 +7278,25 @@ { "expression": { "baseExpression": { - "id": 515, + "id": 512, "name": "order", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 24, - "src": "6433:5:0", + "src": "6454:5:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$831_storage_$", "typeString": "mapping(bytes32 => struct IGateway.Order storage ref)" } }, - "id": 517, + "id": 514, "indexExpression": { - "id": 516, + "id": 513, "name": "_orderId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 434, - "src": "6439:8:0", + "referencedDeclaration": 431, + "src": "6460:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -7355,22 +7307,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6433:15:0", + "src": "6454:15:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage", + "typeIdentifier": "t_struct$_Order_$831_storage", "typeString": "struct IGateway.Order storage ref" } }, - "id": 518, + "id": 515, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "6449:13:0", + "memberLocation": "6470:13:0", "memberName": "refundAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 829, - "src": "6433:29:0", + "referencedDeclaration": 826, + "src": "6454:29:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7381,18 +7333,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 524, + "id": 521, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 519, + "id": 516, "name": "refundAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 495, - "src": "6467:12:0", + "referencedDeclaration": 492, + "src": "6488:12:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7403,25 +7355,25 @@ "rightExpression": { "expression": { "baseExpression": { - "id": 520, + "id": 517, "name": "order", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 24, - "src": "6482:5:0", + "src": "6503:5:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$831_storage_$", "typeString": "mapping(bytes32 => struct IGateway.Order storage ref)" } }, - "id": 522, + "id": 519, "indexExpression": { - "id": 521, + "id": 518, "name": "_orderId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 434, - "src": "6488:8:0", + "referencedDeclaration": 431, + "src": "6509:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -7432,28 +7384,28 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6482:15:0", + "src": "6503:15:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage", + "typeIdentifier": "t_struct$_Order_$831_storage", "typeString": "struct IGateway.Order storage ref" } }, - "id": 523, + "id": 520, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "6498:9:0", + "memberLocation": "6519:9:0", "memberName": "senderFee", "nodeType": "MemberAccess", - "referencedDeclaration": 821, - "src": "6482:25:0", + "referencedDeclaration": 818, + "src": "6503:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "6467:40:0", + "src": "6488:40:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7476,25 +7428,25 @@ { "expression": { "baseExpression": { - "id": 509, + "id": 506, "name": "order", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 24, - "src": "6397:5:0", + "src": "6418:5:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$831_storage_$", "typeString": "mapping(bytes32 => struct IGateway.Order storage ref)" } }, - "id": 511, + "id": 508, "indexExpression": { - "id": 510, + "id": 507, "name": "_orderId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 434, - "src": "6403:8:0", + "referencedDeclaration": 431, + "src": "6424:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -7505,22 +7457,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6397:15:0", + "src": "6418:15:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage", + "typeIdentifier": "t_struct$_Order_$831_storage", "typeString": "struct IGateway.Order storage ref" } }, - "id": 512, + "id": 509, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "6413:5:0", + "memberLocation": "6434:5:0", "memberName": "token", "nodeType": "MemberAccess", - "referencedDeclaration": 817, - "src": "6397:21:0", + "referencedDeclaration": 814, + "src": "6418:21:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7534,18 +7486,18 @@ "typeString": "address" } ], - "id": 508, + "id": 505, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2557, - "src": "6390:6:0", + "referencedDeclaration": 2554, + "src": "6411:6:0", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$2557_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$2554_$", "typeString": "type(contract IERC20)" } }, - "id": 513, + "id": 510, "isConstant": false, "isLValue": false, "isPure": false, @@ -7554,29 +7506,29 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6390:29:0", + "src": "6411:29:0", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$2557", + "typeIdentifier": "t_contract$_IERC20_$2554", "typeString": "contract IERC20" } }, - "id": 514, + "id": 511, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "6420:8:0", + "memberLocation": "6441:8:0", "memberName": "transfer", "nodeType": "MemberAccess", - "referencedDeclaration": 2524, - "src": "6390:38:0", + "referencedDeclaration": 2521, + "src": "6411:38:0", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,uint256) external returns (bool)" } }, - "id": 525, + "id": 522, "isConstant": false, "isLValue": false, "isPure": false, @@ -7585,39 +7537,39 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6390:121:0", + "src": "6411:121:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 526, + "id": 523, "nodeType": "ExpressionStatement", - "src": "6390:121:0" + "src": "6411:121:0" }, { "eventCall": { "arguments": [ { - "id": 528, + "id": 525, "name": "_fee", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 432, - "src": "6560:4:0", + "referencedDeclaration": 429, + "src": "6581:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { - "id": 529, + "id": 526, "name": "_orderId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 434, - "src": "6566:8:0", + "referencedDeclaration": 431, + "src": "6587:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -7635,18 +7587,18 @@ "typeString": "bytes32" } ], - "id": 527, + "id": 524, "name": "OrderRefunded", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 806, - "src": "6546:13:0", + "referencedDeclaration": 803, + "src": "6567:13:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_uint256_$_t_bytes32_$returns$__$", "typeString": "function (uint256,bytes32)" } }, - "id": 530, + "id": 527, "isConstant": false, "isLValue": false, "isPure": false, @@ -7655,85 +7607,85 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6546:29:0", + "src": "6567:29:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 531, + "id": 528, "nodeType": "EmitStatement", - "src": "6541:34:0" + "src": "6562:34:0" }, { "expression": { "hexValue": "74727565", - "id": 532, + "id": 529, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "6587:4:0", + "src": "6608:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "true" }, - "functionReturnParameters": 440, - "id": 533, + "functionReturnParameters": 437, + "id": 530, "nodeType": "Return", - "src": "6580:11:0" + "src": "6601:11:0" } ] }, "documentation": { - "id": 430, + "id": 427, "nodeType": "StructuredDocumentation", - "src": "5633:34:0", + "src": "5654:34:0", "text": "@dev See {refund-IGateway}. " }, "functionSelector": "71eedb88", - "id": 535, + "id": 532, "implemented": true, "kind": "function", "modifiers": [ { - "id": 437, + "id": 434, "kind": "modifierInvocation", "modifierName": { - "id": 436, + "id": 433, "name": "onlyAggregator", "nameLocations": [ - "5726:14:0" + "5747:14:0" ], "nodeType": "IdentifierPath", "referencedDeclaration": 70, - "src": "5726:14:0" + "src": "5747:14:0" }, "nodeType": "ModifierInvocation", - "src": "5726:14:0" + "src": "5747:14:0" } ], "name": "refund", - "nameLocation": "5678:6:0", + "nameLocation": "5699:6:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 435, + "id": 432, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 432, + "id": 429, "mutability": "mutable", "name": "_fee", - "nameLocation": "5693:4:0", + "nameLocation": "5714:4:0", "nodeType": "VariableDeclaration", - "scope": 535, - "src": "5685:12:0", + "scope": 532, + "src": "5706:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7741,10 +7693,10 @@ "typeString": "uint256" }, "typeName": { - "id": 431, + "id": 428, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5685:7:0", + "src": "5706:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7754,13 +7706,13 @@ }, { "constant": false, - "id": 434, + "id": 431, "mutability": "mutable", "name": "_orderId", - "nameLocation": "5707:8:0", + "nameLocation": "5728:8:0", "nodeType": "VariableDeclaration", - "scope": 535, - "src": "5699:16:0", + "scope": 532, + "src": "5720:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7768,10 +7720,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 433, + "id": 430, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "5699:7:0", + "src": "5720:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -7780,21 +7732,21 @@ "visibility": "internal" } ], - "src": "5684:32:0" + "src": "5705:32:0" }, "returnParameters": { - "id": 440, + "id": 437, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 439, + "id": 436, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 535, - "src": "5750:4:0", + "scope": 532, + "src": "5771:4:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7802,10 +7754,10 @@ "typeString": "bool" }, "typeName": { - "id": 438, + "id": 435, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "5750:4:0", + "src": "5771:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -7814,45 +7766,45 @@ "visibility": "internal" } ], - "src": "5749:6:0" + "src": "5770:6:0" }, - "scope": 582, - "src": "5669:926:0", + "scope": 579, + "src": "5690:926:0", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { "baseFunctions": [ - 895 + 892 ], "body": { - "id": 548, + "id": 545, "nodeType": "Block", - "src": "6905:30:0", + "src": "6926:30:0", "statements": [ { "expression": { "baseExpression": { - "id": 544, + "id": 541, "name": "order", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 24, - "src": "6916:5:0", + "src": "6937:5:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$831_storage_$", "typeString": "mapping(bytes32 => struct IGateway.Order storage ref)" } }, - "id": 546, + "id": 543, "indexExpression": { - "id": 545, + "id": 542, "name": "_orderId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 538, - "src": "6922:8:0", + "referencedDeclaration": 535, + "src": "6943:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -7863,46 +7815,46 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6916:15:0", + "src": "6937:15:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage", + "typeIdentifier": "t_struct$_Order_$831_storage", "typeString": "struct IGateway.Order storage ref" } }, - "functionReturnParameters": 543, - "id": 547, + "functionReturnParameters": 540, + "id": 544, "nodeType": "Return", - "src": "6909:22:0" + "src": "6930:22:0" } ] }, "documentation": { - "id": 536, + "id": 533, "nodeType": "StructuredDocumentation", - "src": "6786:40:0", + "src": "6807:40:0", "text": "@dev See {getOrderInfo-IGateway}. " }, "functionSelector": "768c6ec0", - "id": 549, + "id": 546, "implemented": true, "kind": "function", "modifiers": [], "name": "getOrderInfo", - "nameLocation": "6837:12:0", + "nameLocation": "6858:12:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 539, + "id": 536, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 538, + "id": 535, "mutability": "mutable", "name": "_orderId", - "nameLocation": "6858:8:0", + "nameLocation": "6879:8:0", "nodeType": "VariableDeclaration", - "scope": 549, - "src": "6850:16:0", + "scope": 546, + "src": "6871:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7910,10 +7862,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 537, + "id": 534, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "6850:7:0", + "src": "6871:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -7922,66 +7874,66 @@ "visibility": "internal" } ], - "src": "6849:18:0" + "src": "6870:18:0" }, "returnParameters": { - "id": 543, + "id": 540, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 542, + "id": 539, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 549, - "src": "6891:12:0", + "scope": 546, + "src": "6912:12:0", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_memory_ptr", + "typeIdentifier": "t_struct$_Order_$831_memory_ptr", "typeString": "struct IGateway.Order" }, "typeName": { - "id": 541, + "id": 538, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 540, + "id": 537, "name": "Order", "nameLocations": [ - "6891:5:0" + "6912:5:0" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 834, - "src": "6891:5:0" + "referencedDeclaration": 831, + "src": "6912:5:0" }, - "referencedDeclaration": 834, - "src": "6891:5:0", + "referencedDeclaration": 831, + "src": "6912:5:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage_ptr", + "typeIdentifier": "t_struct$_Order_$831_storage_ptr", "typeString": "struct IGateway.Order" } }, "visibility": "internal" } ], - "src": "6890:14:0" + "src": "6911:14:0" }, - "scope": 582, - "src": "6828:107:0", + "scope": 579, + "src": "6849:107:0", "stateMutability": "view", "virtual": false, "visibility": "external" }, { "baseFunctions": [ - 886 + 883 ], "body": { - "id": 567, + "id": 564, "nodeType": "Block", - "src": "7055:71:0", + "src": "7076:71:0", "statements": [ { "condition": { @@ -7989,32 +7941,32 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 561, + "id": 558, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "baseExpression": { - "id": 557, + "id": 554, "name": "_isTokenSupported", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 599, - "src": "7063:17:0", + "referencedDeclaration": 596, + "src": "7084:17:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 559, + "id": 556, "indexExpression": { - "id": 558, + "id": 555, "name": "_token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 552, - "src": "7081:6:0", + "referencedDeclaration": 549, + "src": "7102:6:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -8025,7 +7977,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7063:25:0", + "src": "7084:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8035,103 +7987,103 @@ "operator": "==", "rightExpression": { "hexValue": "31", - "id": 560, + "id": 557, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "7092:1:0", + "src": "7113:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", "typeString": "int_const 1" }, "value": "1" }, - "src": "7063:30:0", + "src": "7084:30:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 564, + "id": 561, "nodeType": "IfStatement", - "src": "7059:47:0", + "src": "7080:47:0", "trueBody": { "expression": { "hexValue": "74727565", - "id": 562, + "id": 559, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "7102:4:0", + "src": "7123:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "true" }, - "functionReturnParameters": 556, - "id": 563, + "functionReturnParameters": 553, + "id": 560, "nodeType": "Return", - "src": "7095:11:0" + "src": "7116:11:0" } }, { "expression": { "hexValue": "66616c7365", - "id": 565, + "id": 562, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "7117:5:0", + "src": "7138:5:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "false" }, - "functionReturnParameters": 556, - "id": 566, + "functionReturnParameters": 553, + "id": 563, "nodeType": "Return", - "src": "7110:12:0" + "src": "7131:12:0" } ] }, "documentation": { - "id": 550, + "id": 547, "nodeType": "StructuredDocumentation", - "src": "6938:44:0", + "src": "6959:44:0", "text": "@dev See {isTokenSupported-IGateway}. " }, "functionSelector": "75151b63", - "id": 568, + "id": 565, "implemented": true, "kind": "function", "modifiers": [], "name": "isTokenSupported", - "nameLocation": "6993:16:0", + "nameLocation": "7014:16:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 553, + "id": 550, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 552, + "id": 549, "mutability": "mutable", "name": "_token", - "nameLocation": "7018:6:0", + "nameLocation": "7039:6:0", "nodeType": "VariableDeclaration", - "scope": 568, - "src": "7010:14:0", + "scope": 565, + "src": "7031:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8139,10 +8091,10 @@ "typeString": "address" }, "typeName": { - "id": 551, + "id": 548, "name": "address", "nodeType": "ElementaryTypeName", - "src": "7010:7:0", + "src": "7031:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -8152,21 +8104,21 @@ "visibility": "internal" } ], - "src": "7009:16:0" + "src": "7030:16:0" }, "returnParameters": { - "id": 556, + "id": 553, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 555, + "id": 552, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 568, - "src": "7049:4:0", + "scope": 565, + "src": "7070:4:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8174,10 +8126,10 @@ "typeString": "bool" }, "typeName": { - "id": 554, + "id": 551, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "7049:4:0", + "src": "7070:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -8186,104 +8138,104 @@ "visibility": "internal" } ], - "src": "7048:6:0" + "src": "7069:6:0" }, - "scope": 582, - "src": "6984:142:0", + "scope": 579, + "src": "7005:142:0", "stateMutability": "view", "virtual": false, "visibility": "external" }, { "baseFunctions": [ - 903 + 900 ], "body": { - "id": 580, + "id": 577, "nodeType": "Block", - "src": "7237:44:0", + "src": "7258:44:0", "statements": [ { "expression": { "components": [ { - "id": 576, + "id": 573, "name": "protocolFeePercent", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 591, - "src": "7249:18:0", + "referencedDeclaration": 588, + "src": "7270:18:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } }, { - "id": 577, + "id": 574, "name": "MAX_BPS", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 589, - "src": "7269:7:0", + "referencedDeclaration": 586, + "src": "7290:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 578, + "id": 575, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "7248:29:0", + "src": "7269:29:0", "typeDescriptions": { "typeIdentifier": "t_tuple$_t_uint64_$_t_uint256_$", "typeString": "tuple(uint64,uint256)" } }, - "functionReturnParameters": 575, - "id": 579, + "functionReturnParameters": 572, + "id": 576, "nodeType": "Return", - "src": "7241:36:0" + "src": "7262:36:0" } ] }, "documentation": { - "id": 569, + "id": 566, "nodeType": "StructuredDocumentation", - "src": "7129:41:0", + "src": "7150:41:0", "text": "@dev See {getFeeDetails-IGateway}. " }, "functionSelector": "b810c636", - "id": 581, + "id": 578, "implemented": true, "kind": "function", "modifiers": [], "name": "getFeeDetails", - "nameLocation": "7181:13:0", + "nameLocation": "7202:13:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 570, + "id": 567, "nodeType": "ParameterList", "parameters": [], - "src": "7194:2:0" + "src": "7215:2:0" }, "returnParameters": { - "id": 575, + "id": 572, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 572, + "id": 569, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 581, - "src": "7220:6:0", + "scope": 578, + "src": "7241:6:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8291,10 +8243,10 @@ "typeString": "uint64" }, "typeName": { - "id": 571, + "id": 568, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "7220:6:0", + "src": "7241:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -8304,13 +8256,13 @@ }, { "constant": false, - "id": 574, + "id": 571, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 581, - "src": "7228:7:0", + "scope": 578, + "src": "7249:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8318,10 +8270,10 @@ "typeString": "uint256" }, "typeName": { - "id": 573, + "id": 570, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "7228:7:0", + "src": "7249:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8330,48 +8282,48 @@ "visibility": "internal" } ], - "src": "7219:17:0" + "src": "7240:17:0" }, - "scope": 582, - "src": "7172:109:0", + "scope": 579, + "src": "7193:109:0", "stateMutability": "view", "virtual": false, "visibility": "external" } ], - "scope": 583, - "src": "390:6893:0", + "scope": 580, + "src": "390:6914:0", "usedErrors": [] } ], - "src": "39:7245:0" + "src": "39:7266:0" }, "legacyAST": { - "absolutePath": "/Users/chibie/paycrest/contracts/contracts/Gateway.sol", + "absolutePath": "/Users/encryption/Downloads/projects/paycrest/paycrestContract/contracts/Gateway.sol", "exportedSymbols": { "ContextUpgradeable": [ - 1892 + 1889 ], "Gateway": [ - 582 + 579 ], "GatewaySettingManager": [ - 766 + 763 ], "IERC20": [ - 2557 + 2554 ], "IGateway": [ - 904 + 901 ], "Initializable": [ - 1383 + 1380 ], "PausableUpgradeable": [ - 1511 + 1508 ] }, - "id": 583, + "id": 580, "license": "UNLICENSED", "nodeType": "SourceUnit", "nodes": [ @@ -8392,20 +8344,20 @@ "id": 2, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", - "scope": 583, - "sourceUnit": 1512, + "scope": 580, + "sourceUnit": 1509, "src": "65:78:0", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "/Users/chibie/paycrest/contracts/contracts/GatewaySettingManager.sol", + "absolutePath": "/Users/encryption/Downloads/projects/paycrest/paycrestContract/contracts/GatewaySettingManager.sol", "file": "./GatewaySettingManager.sol", "id": 4, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", - "scope": 583, - "sourceUnit": 767, + "scope": 580, + "sourceUnit": 764, "src": "145:66:0", "symbolAliases": [ { @@ -8414,7 +8366,7 @@ "name": "GatewaySettingManager", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 766, + "referencedDeclaration": 763, "src": "153:21:0", "typeDescriptions": {} }, @@ -8424,13 +8376,13 @@ "unitAlias": "" }, { - "absolutePath": "/Users/chibie/paycrest/contracts/contracts/interfaces/IGateway.sol", + "absolutePath": "/Users/encryption/Downloads/projects/paycrest/paycrestContract/contracts/interfaces/IGateway.sol", "file": "./interfaces/IGateway.sol", "id": 7, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", - "scope": 583, - "sourceUnit": 905, + "scope": 580, + "sourceUnit": 902, "src": "212:59:0", "symbolAliases": [ { @@ -8439,7 +8391,7 @@ "name": "IGateway", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 904, + "referencedDeclaration": 901, "src": "220:8:0", "typeDescriptions": {} }, @@ -8451,7 +8403,7 @@ "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2557, + "referencedDeclaration": 2554, "src": "230:6:0", "typeDescriptions": {} }, @@ -8471,7 +8423,7 @@ "410:8:0" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 904, + "referencedDeclaration": 901, "src": "410:8:0" }, "id": 10, @@ -8486,7 +8438,7 @@ "420:21:0" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 766, + "referencedDeclaration": 763, "src": "420:21:0" }, "id": 12, @@ -8501,7 +8453,7 @@ "443:19:0" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 1511, + "referencedDeclaration": 1508, "src": "443:19:0" }, "id": 14, @@ -8519,16 +8471,16 @@ "text": " @title Gateway\n @notice This contract serves as a gateway for creating orders and managing settlements." }, "fullyImplemented": true, - "id": 582, + "id": 579, "linearizedBaseContracts": [ - 582, - 1511, - 766, - 1081, - 1214, - 1892, - 1383, - 904 + 579, + 1508, + 763, + 1078, + 1211, + 1889, + 1380, + 901 ], "name": "Gateway", "nameLocation": "399:7:0", @@ -8596,7 +8548,7 @@ "name": "fee", "nameLocation": "473:3:0", "nodeType": "StructDefinition", - "scope": 582, + "scope": 579, "src": "466:73:0", "visibility": "public" }, @@ -8607,12 +8559,12 @@ "name": "order", "nameLocation": "576:5:0", "nodeType": "VariableDeclaration", - "scope": 582, + "scope": 579, "src": "542:39:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$831_storage_$", "typeString": "mapping(bytes32 => struct IGateway.Order)" }, "typeName": { @@ -8632,7 +8584,7 @@ "nodeType": "Mapping", "src": "542:25:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$831_storage_$", "typeString": "mapping(bytes32 => struct IGateway.Order)" }, "valueName": "", @@ -8647,13 +8599,13 @@ "561:5:0" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 834, + "referencedDeclaration": 831, "src": "561:5:0" }, - "referencedDeclaration": 834, + "referencedDeclaration": 831, "src": "561:5:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage_ptr", + "typeIdentifier": "t_struct$_Order_$831_storage_ptr", "typeString": "struct IGateway.Order" } } @@ -8667,7 +8619,7 @@ "name": "_nonce", "nameLocation": "620:6:0", "nodeType": "VariableDeclaration", - "scope": 582, + "scope": 579, "src": "584:42:0", "stateVariable": true, "storageLocation": "default", @@ -8717,7 +8669,7 @@ "name": "__gap", "nameLocation": "649:5:0", "nodeType": "VariableDeclaration", - "scope": 582, + "scope": 579, "src": "629:25:0", "stateVariable": true, "storageLocation": "default", @@ -8777,7 +8729,7 @@ "name": "_disableInitializers", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1364, + "referencedDeclaration": 1361, "src": "726:20:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", @@ -8831,7 +8783,7 @@ "parameters": [], "src": "722:0:0" }, - "scope": 582, + "scope": 579, "src": "708:44:0", "stateMutability": "nonpayable", "virtual": false, @@ -8855,7 +8807,7 @@ "name": "MAX_BPS", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 589, + "referencedDeclaration": 586, "src": "842:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -8899,7 +8851,7 @@ "name": "__Ownable2Step_init", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1001, + "referencedDeclaration": 998, "src": "863:19:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", @@ -8935,7 +8887,7 @@ "name": "__Pausable_init", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1415, + "referencedDeclaration": 1412, "src": "888:15:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", @@ -8985,7 +8937,7 @@ "826:11:0" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 1285, + "referencedDeclaration": 1282, "src": "826:11:0" }, "nodeType": "ModifierInvocation", @@ -9007,7 +8959,7 @@ "parameters": [], "src": "838:0:0" }, - "scope": 582, + "scope": 579, "src": "795:114:0", "stateMutability": "nonpayable", "virtual": false, @@ -9066,7 +9018,7 @@ "name": "_aggregatorAddress", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 595, + "referencedDeclaration": 592, "src": "1044:18:0", "typeDescriptions": { "typeIdentifier": "t_address", @@ -9183,7 +9135,7 @@ "name": "_pause", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1489, + "referencedDeclaration": 1486, "src": "1365:6:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", @@ -9233,7 +9185,7 @@ "1351:9:0" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 1128, + "referencedDeclaration": 1125, "src": "1351:9:0" }, "nodeType": "ModifierInvocation", @@ -9255,7 +9207,7 @@ "parameters": [], "src": "1361:0:0" }, - "scope": 582, + "scope": 579, "src": "1325:52:0", "stateMutability": "nonpayable", "virtual": false, @@ -9276,7 +9228,7 @@ "name": "_unpause", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1505, + "referencedDeclaration": 1502, "src": "1463:8:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", @@ -9326,7 +9278,7 @@ "1449:9:0" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 1128, + "referencedDeclaration": 1125, "src": "1449:9:0" }, "nodeType": "ModifierInvocation", @@ -9348,7 +9300,7 @@ "parameters": [], "src": "1459:0:0" }, - "scope": 582, + "scope": 579, "src": "1421:56:0", "stateMutability": "nonpayable", "virtual": false, @@ -9356,12 +9308,12 @@ }, { "baseFunctions": [ - 854 + 851 ], "body": { - "id": 217, + "id": 212, "nodeType": "Block", - "src": "1945:1133:0", + "src": "1945:1095:0", "statements": [ { "expression": { @@ -9454,7 +9406,7 @@ "name": "_handler", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 274, + "referencedDeclaration": 269, "src": "1979:8:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$_t_uint256_$_t_address_$_t_address_$_t_uint256_$returns$__$", @@ -9692,7 +9644,7 @@ "referencedDeclaration": 4294967268, "src": "2246:4:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_Gateway_$582", + "typeIdentifier": "t_contract$_Gateway_$579", "typeString": "contract Gateway" } } @@ -9700,7 +9652,7 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Gateway_$582", + "typeIdentifier": "t_contract$_Gateway_$579", "typeString": "contract Gateway" } ], @@ -9823,10 +9775,10 @@ "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2557, + "referencedDeclaration": 2554, "src": "2198:6:0", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$2557_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$2554_$", "typeString": "type(contract IERC20)" } }, @@ -9842,7 +9794,7 @@ "src": "2198:14:0", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$2557", + "typeIdentifier": "t_contract$_IERC20_$2554", "typeString": "contract IERC20" } }, @@ -9854,7 +9806,7 @@ "memberLocation": "2213:12:0", "memberName": "transferFrom", "nodeType": "MemberAccess", - "referencedDeclaration": 2556, + "referencedDeclaration": 2553, "src": "2198:27:0", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", @@ -10168,7 +10120,7 @@ "name": "_protocolFee", "nameLocation": "2503:12:0", "nodeType": "VariableDeclaration", - "scope": 217, + "scope": 212, "src": "2495:20:0", "stateVariable": false, "storageLocation": "default", @@ -10189,13 +10141,13 @@ "visibility": "internal" } ], - "id": 177, + "id": 174, "initialValue": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 176, + "id": 173, "isConstant": false, "isLValue": false, "isPure": false, @@ -10231,7 +10183,7 @@ "name": "protocolFeePercent", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 591, + "referencedDeclaration": 588, "src": "2529:18:0", "typeDescriptions": { "typeIdentifier": "t_uint64", @@ -10261,100 +10213,54 @@ "nodeType": "BinaryOperation", "operator": "/", "rightExpression": { - "components": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 174, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 172, - "name": "MAX_BPS", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 589, - "src": "2552:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "id": 173, - "name": "protocolFeePercent", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 591, - "src": "2562:18:0", - "typeDescriptions": { - "typeIdentifier": "t_uint64", - "typeString": "uint64" - } - }, - "src": "2552:28:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "id": 175, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "2551:30:0", + "id": 172, + "name": "MAX_BPS", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 586, + "src": "2551:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "2518:63:0", + "src": "2518:40:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "2495:86:0" + "src": "2495:63:0" }, { "expression": { - "id": 199, + "id": 194, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 178, + "id": 175, "name": "order", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 24, - "src": "2585:5:0", + "src": "2562:5:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$831_storage_$", "typeString": "mapping(bytes32 => struct IGateway.Order storage ref)" } }, - "id": 180, + "id": 177, "indexExpression": { - "id": 179, + "id": 176, "name": "orderId", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 110, - "src": "2591:7:0", + "src": "2568:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -10365,9 +10271,9 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "2585:14:0", + "src": "2562:14:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage", + "typeIdentifier": "t_struct$_Order_$831_storage", "typeString": "struct IGateway.Order storage ref" } }, @@ -10377,74 +10283,74 @@ "arguments": [ { "expression": { - "id": 182, + "id": 179, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "2621:3:0", + "src": "2598:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 183, + "id": 180, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "2625:6:0", + "memberLocation": "2602:6:0", "memberName": "sender", "nodeType": "MemberAccess", - "src": "2621:10:0", + "src": "2598:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 184, + "id": 181, "name": "_token", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 93, - "src": "2643:6:0", + "src": "2620:6:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 185, + "id": 182, "name": "_senderFeeRecipient", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 99, - "src": "2674:19:0", + "src": "2651:19:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 186, + "id": 183, "name": "_senderFee", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 101, - "src": "2709:10:0", + "src": "2686:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { - "id": 187, + "id": 184, "name": "_protocolFee", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 167, - "src": "2737:12:0", + "src": "2714:12:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10452,14 +10358,14 @@ }, { "hexValue": "66616c7365", - "id": 188, + "id": 185, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "2767:5:0", + "src": "2744:5:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -10468,14 +10374,14 @@ }, { "hexValue": "66616c7365", - "id": 189, + "id": 186, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "2789:5:0", + "src": "2766:5:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -10483,12 +10389,12 @@ "value": "false" }, { - "id": 190, + "id": 187, "name": "_refundAddress", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 103, - "src": "2814:14:0", + "src": "2791:14:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -10497,12 +10403,12 @@ { "arguments": [ { - "id": 193, + "id": 190, "name": "MAX_BPS", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 589, - "src": "2852:7:0", + "referencedDeclaration": 586, + "src": "2829:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10516,26 +10422,26 @@ "typeString": "uint256" } ], - "id": 192, + "id": 189, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "2845:6:0", + "src": "2822:6:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_uint64_$", "typeString": "type(uint64)" }, "typeName": { - "id": 191, + "id": 188, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "2845:6:0", + "src": "2822:6:0", "typeDescriptions": {} } }, - "id": 194, + "id": 191, "isConstant": false, "isLValue": false, "isPure": false, @@ -10544,7 +10450,7 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2845:15:0", + "src": "2822:15:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint64", @@ -10552,42 +10458,12 @@ } }, { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 197, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 195, - "name": "_amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 95, - "src": "2873:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "id": 196, - "name": "_protocolFee", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 167, - "src": "2883:12:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "2873:22:0", + "id": 192, + "name": "_amount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 95, + "src": "2850:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10637,34 +10513,34 @@ "typeString": "uint256" } ], - "id": 181, + "id": 178, "name": "Order", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 834, - "src": "2602:5:0", + "referencedDeclaration": 831, + "src": "2579:5:0", "typeDescriptions": { - "typeIdentifier": "t_type$_t_struct$_Order_$834_storage_ptr_$", + "typeIdentifier": "t_type$_t_struct$_Order_$831_storage_ptr_$", "typeString": "type(struct IGateway.Order storage pointer)" } }, - "id": 198, + "id": 193, "isConstant": false, "isLValue": false, "isPure": false, "kind": "structConstructorCall", "lValueRequested": false, "nameLocations": [ - "2613:6:0", - "2636:5:0", - "2654:18:0", - "2698:9:0", - "2724:11:0", - "2754:11:0", - "2777:10:0", - "2799:13:0", - "2833:10:0", - "2865:6:0" + "2590:6:0", + "2613:5:0", + "2631:18:0", + "2675:9:0", + "2701:11:0", + "2731:11:0", + "2754:10:0", + "2776:13:0", + "2810:10:0", + "2842:6:0" ], "names": [ "sender", @@ -10679,22 +10555,22 @@ "amount" ], "nodeType": "FunctionCall", - "src": "2602:298:0", + "src": "2579:283:0", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_memory_ptr", + "typeIdentifier": "t_struct$_Order_$831_memory_ptr", "typeString": "struct IGateway.Order memory" } }, - "src": "2585:315:0", + "src": "2562:300:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage", + "typeIdentifier": "t_struct$_Order_$831_storage", "typeString": "struct IGateway.Order storage ref" } }, - "id": 200, + "id": 195, "nodeType": "ExpressionStatement", - "src": "2585:315:0" + "src": "2562:300:0" }, { "eventCall": { @@ -10702,25 +10578,25 @@ { "expression": { "baseExpression": { - "id": 202, + "id": 197, "name": "order", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 24, - "src": "2957:5:0", + "src": "2919:5:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$831_storage_$", "typeString": "mapping(bytes32 => struct IGateway.Order storage ref)" } }, - "id": 204, + "id": 199, "indexExpression": { - "id": 203, + "id": 198, "name": "orderId", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 110, - "src": "2963:7:0", + "src": "2925:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -10731,34 +10607,34 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "2957:14:0", + "src": "2919:14:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage", + "typeIdentifier": "t_struct$_Order_$831_storage", "typeString": "struct IGateway.Order storage ref" } }, - "id": 205, + "id": 200, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "2972:6:0", + "memberLocation": "2934:6:0", "memberName": "sender", "nodeType": "MemberAccess", - "referencedDeclaration": 815, - "src": "2957:21:0", + "referencedDeclaration": 812, + "src": "2919:21:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 206, + "id": 201, "name": "_token", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 93, - "src": "2983:6:0", + "src": "2945:6:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -10767,25 +10643,25 @@ { "expression": { "baseExpression": { - "id": 207, + "id": 202, "name": "order", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 24, - "src": "2994:5:0", + "src": "2956:5:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$831_storage_$", "typeString": "mapping(bytes32 => struct IGateway.Order storage ref)" } }, - "id": 209, + "id": 204, "indexExpression": { - "id": 208, + "id": 203, "name": "orderId", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 110, - "src": "3000:7:0", + "src": "2962:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -10796,70 +10672,70 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "2994:14:0", + "src": "2956:14:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage", + "typeIdentifier": "t_struct$_Order_$831_storage", "typeString": "struct IGateway.Order storage ref" } }, - "id": 210, + "id": 205, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "3009:6:0", + "memberLocation": "2971:6:0", "memberName": "amount", "nodeType": "MemberAccess", - "referencedDeclaration": 833, - "src": "2994:21:0", + "referencedDeclaration": 830, + "src": "2956:21:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { - "id": 211, + "id": 206, "name": "_protocolFee", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 167, - "src": "3020:12:0", + "src": "2982:12:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { - "id": 212, + "id": 207, "name": "orderId", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 110, - "src": "3037:7:0", + "src": "2999:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 213, + "id": 208, "name": "_rate", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 97, - "src": "3049:5:0", + "src": "3011:5:0", "typeDescriptions": { "typeIdentifier": "t_uint96", "typeString": "uint96" } }, { - "id": 214, + "id": 209, "name": "messageHash", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 105, - "src": "3059:11:0", + "src": "3021:11:0", "typeDescriptions": { "typeIdentifier": "t_string_calldata_ptr", "typeString": "string calldata" @@ -10897,18 +10773,18 @@ "typeString": "string calldata" } ], - "id": 201, + "id": 196, "name": "OrderCreated", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 788, - "src": "2940:12:0", + "referencedDeclaration": 785, + "src": "2902:12:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_uint256_$_t_bytes32_$_t_uint256_$_t_string_memory_ptr_$returns$__$", "typeString": "function (address,address,uint256,uint256,bytes32,uint256,string memory)" } }, - "id": 215, + "id": 210, "isConstant": false, "isLValue": false, "isPure": false, @@ -10917,16 +10793,16 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "2940:134:0", + "src": "2902:134:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 216, + "id": 211, "nodeType": "EmitStatement", - "src": "2935:139:0" + "src": "2897:139:0" } ] }, @@ -10937,7 +10813,7 @@ "text": "@dev See {createOrder-IGateway}. " }, "functionSelector": "809804f7", - "id": 218, + "id": 213, "implemented": true, "kind": "function", "modifiers": [ @@ -10951,7 +10827,7 @@ "1905:13:0" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 1433, + "referencedDeclaration": 1430, "src": "1905:13:0" }, "nodeType": "ModifierInvocation", @@ -10972,7 +10848,7 @@ "name": "_token", "nameLocation": "1741:6:0", "nodeType": "VariableDeclaration", - "scope": 218, + "scope": 213, "src": "1733:14:0", "stateVariable": false, "storageLocation": "default", @@ -11000,7 +10876,7 @@ "name": "_amount", "nameLocation": "1759:7:0", "nodeType": "VariableDeclaration", - "scope": 218, + "scope": 213, "src": "1751:15:0", "stateVariable": false, "storageLocation": "default", @@ -11027,7 +10903,7 @@ "name": "_rate", "nameLocation": "1777:5:0", "nodeType": "VariableDeclaration", - "scope": 218, + "scope": 213, "src": "1770:12:0", "stateVariable": false, "storageLocation": "default", @@ -11054,7 +10930,7 @@ "name": "_senderFeeRecipient", "nameLocation": "1794:19:0", "nodeType": "VariableDeclaration", - "scope": 218, + "scope": 213, "src": "1786:27:0", "stateVariable": false, "storageLocation": "default", @@ -11082,7 +10958,7 @@ "name": "_senderFee", "nameLocation": "1825:10:0", "nodeType": "VariableDeclaration", - "scope": 218, + "scope": 213, "src": "1817:18:0", "stateVariable": false, "storageLocation": "default", @@ -11109,7 +10985,7 @@ "name": "_refundAddress", "nameLocation": "1847:14:0", "nodeType": "VariableDeclaration", - "scope": 218, + "scope": 213, "src": "1839:22:0", "stateVariable": false, "storageLocation": "default", @@ -11137,7 +11013,7 @@ "name": "messageHash", "nameLocation": "1881:11:0", "nodeType": "VariableDeclaration", - "scope": 218, + "scope": 213, "src": "1865:27:0", "stateVariable": false, "storageLocation": "calldata", @@ -11171,7 +11047,7 @@ "name": "orderId", "nameLocation": "1936:7:0", "nodeType": "VariableDeclaration", - "scope": 218, + "scope": 213, "src": "1928:15:0", "stateVariable": false, "storageLocation": "default", @@ -11194,17 +11070,17 @@ ], "src": "1927:17:0" }, - "scope": 582, - "src": "1709:1369:0", + "scope": 579, + "src": "1709:1331:0", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { "body": { - "id": 273, + "id": 268, "nodeType": "Block", - "src": "3622:276:0", + "src": "3584:276:0", "statements": [ { "expression": { @@ -11214,32 +11090,32 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 237, + "id": 232, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "baseExpression": { - "id": 233, + "id": 228, "name": "_isTokenSupported", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 599, - "src": "3634:17:0", + "referencedDeclaration": 596, + "src": "3596:17:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 235, + "id": 230, "indexExpression": { - "id": 234, + "id": 229, "name": "_token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 221, - "src": "3652:6:0", + "referencedDeclaration": 216, + "src": "3614:6:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -11250,7 +11126,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3634:25:0", + "src": "3596:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11260,21 +11136,21 @@ "operator": "==", "rightExpression": { "hexValue": "31", - "id": 236, + "id": 231, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3663:1:0", + "src": "3625:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", "typeString": "int_const 1" }, "value": "1" }, - "src": "3634:30:0", + "src": "3596:30:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -11282,14 +11158,14 @@ }, { "hexValue": "546f6b656e4e6f74537570706f72746564", - "id": 238, + "id": 233, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3666:19:0", + "src": "3628:19:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_d2f8e8f0a3132d85392dd42596f134395b200d03cc73cebaef0c903d898657e1", "typeString": "literal_string \"TokenNotSupported\"" @@ -11308,7 +11184,7 @@ "typeString": "literal_string \"TokenNotSupported\"" } ], - "id": 232, + "id": 227, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -11316,13 +11192,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "3626:7:0", + "src": "3588:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 239, + "id": 234, "isConstant": false, "isLValue": false, "isPure": false, @@ -11331,16 +11207,16 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3626:60:0", + "src": "3588:60:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 240, + "id": 235, "nodeType": "ExpressionStatement", - "src": "3626:60:0" + "src": "3588:60:0" }, { "expression": { @@ -11350,18 +11226,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 244, + "id": 239, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 242, + "id": 237, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 223, - "src": "3698:7:0", + "referencedDeclaration": 218, + "src": "3660:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11371,21 +11247,21 @@ "operator": "!=", "rightExpression": { "hexValue": "30", - "id": 243, + "id": 238, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3709:1:0", + "src": "3671:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "3698:12:0", + "src": "3660:12:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -11393,14 +11269,14 @@ }, { "hexValue": "416d6f756e7449735a65726f", - "id": 245, + "id": 240, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3712:14:0", + "src": "3674:14:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_41a3c7da6a405d0b582130b233ab9373122491f5044da88c4622af2417f2b5d2", "typeString": "literal_string \"AmountIsZero\"" @@ -11419,7 +11295,7 @@ "typeString": "literal_string \"AmountIsZero\"" } ], - "id": 241, + "id": 236, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -11427,13 +11303,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "3690:7:0", + "src": "3652:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 246, + "id": 241, "isConstant": false, "isLValue": false, "isPure": false, @@ -11442,16 +11318,16 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3690:37:0", + "src": "3652:37:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 247, + "id": 242, "nodeType": "ExpressionStatement", - "src": "3690:37:0" + "src": "3652:37:0" }, { "expression": { @@ -11461,18 +11337,18 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 254, + "id": 249, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 249, + "id": 244, "name": "_refundAddress", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 225, - "src": "3739:14:0", + "referencedDeclaration": 220, + "src": "3701:14:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -11484,14 +11360,14 @@ "arguments": [ { "hexValue": "30", - "id": 252, + "id": 247, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3765:1:0", + "src": "3727:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -11506,26 +11382,26 @@ "typeString": "int_const 0" } ], - "id": 251, + "id": 246, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "3757:7:0", + "src": "3719:7:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 250, + "id": 245, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3757:7:0", + "src": "3719:7:0", "typeDescriptions": {} } }, - "id": 253, + "id": 248, "isConstant": false, "isLValue": false, "isPure": true, @@ -11534,14 +11410,14 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3757:10:0", + "src": "3719:10:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "3739:28:0", + "src": "3701:28:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -11549,14 +11425,14 @@ }, { "hexValue": "5468726f775a65726f41646472657373", - "id": 255, + "id": 250, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3769:18:0", + "src": "3731:18:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_c69ddfb7ac12bc88a1972db6046dbf646efc1690dd81423d8eb86a59fbc59dd7", "typeString": "literal_string \"ThrowZeroAddress\"" @@ -11575,7 +11451,7 @@ "typeString": "literal_string \"ThrowZeroAddress\"" } ], - "id": 248, + "id": 243, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -11583,13 +11459,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "3731:7:0", + "src": "3693:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 256, + "id": 251, "isConstant": false, "isLValue": false, "isPure": false, @@ -11598,16 +11474,16 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3731:57:0", + "src": "3693:57:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 257, + "id": 252, "nodeType": "ExpressionStatement", - "src": "3731:57:0" + "src": "3693:57:0" }, { "condition": { @@ -11615,18 +11491,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 260, + "id": 255, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 258, + "id": 253, "name": "_senderFee", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 229, - "src": "3797:10:0", + "referencedDeclaration": 224, + "src": "3759:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11636,33 +11512,33 @@ "operator": "!=", "rightExpression": { "hexValue": "30", - "id": 259, + "id": 254, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3811:1:0", + "src": "3773:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "3797:15:0", + "src": "3759:15:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 272, + "id": 267, "nodeType": "IfStatement", - "src": "3793:102:0", + "src": "3755:102:0", "trueBody": { - "id": 271, + "id": 266, "nodeType": "Block", - "src": "3814:81:0", + "src": "3776:81:0", "statements": [ { "expression": { @@ -11672,18 +11548,18 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 267, + "id": 262, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 262, + "id": 257, "name": "_senderFeeRecipient", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 227, - "src": "3827:19:0", + "referencedDeclaration": 222, + "src": "3789:19:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -11695,14 +11571,14 @@ "arguments": [ { "hexValue": "30", - "id": 265, + "id": 260, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3858:1:0", + "src": "3820:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -11717,26 +11593,26 @@ "typeString": "int_const 0" } ], - "id": 264, + "id": 259, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "3850:7:0", + "src": "3812:7:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 263, + "id": 258, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3850:7:0", + "src": "3812:7:0", "typeDescriptions": {} } }, - "id": 266, + "id": 261, "isConstant": false, "isLValue": false, "isPure": true, @@ -11745,14 +11621,14 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3850:10:0", + "src": "3812:10:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "3827:33:0", + "src": "3789:33:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -11760,14 +11636,14 @@ }, { "hexValue": "496e76616c696453656e646572466565526563697069656e74", - "id": 268, + "id": 263, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3862:27:0", + "src": "3824:27:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_ffb69afb32cdb1c7026bbd5bf2be167eb8b698d96a6fa0abd73b70c43ca464b8", "typeString": "literal_string \"InvalidSenderFeeRecipient\"" @@ -11786,7 +11662,7 @@ "typeString": "literal_string \"InvalidSenderFeeRecipient\"" } ], - "id": 261, + "id": 256, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -11794,13 +11670,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "3819:7:0", + "src": "3781:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 269, + "id": 264, "isConstant": false, "isLValue": false, "isPure": false, @@ -11809,16 +11685,16 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "3819:71:0", + "src": "3781:71:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 270, + "id": 265, "nodeType": "ExpressionStatement", - "src": "3819:71:0" + "src": "3781:71:0" } ] } @@ -11826,31 +11702,31 @@ ] }, "documentation": { - "id": 219, + "id": 214, "nodeType": "StructuredDocumentation", - "src": "3081:388:0", + "src": "3043:388:0", "text": " @dev Internal function to handle order creation.\n @param _token The address of the token being traded.\n @param _amount The amount of tokens being traded.\n @param _refundAddress The address to refund the tokens in case of cancellation.\n @param _senderFeeRecipient The address of the recipient for the sender fee.\n @param _senderFee The amount of the sender fee." }, - "id": 274, + "id": 269, "implemented": true, "kind": "function", "modifiers": [], "name": "_handler", - "nameLocation": "3480:8:0", + "nameLocation": "3442:8:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 230, + "id": 225, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 221, + "id": 216, "mutability": "mutable", "name": "_token", - "nameLocation": "3500:6:0", + "nameLocation": "3462:6:0", "nodeType": "VariableDeclaration", - "scope": 274, - "src": "3492:14:0", + "scope": 269, + "src": "3454:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -11858,10 +11734,10 @@ "typeString": "address" }, "typeName": { - "id": 220, + "id": 215, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3492:7:0", + "src": "3454:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -11872,13 +11748,13 @@ }, { "constant": false, - "id": 223, + "id": 218, "mutability": "mutable", "name": "_amount", - "nameLocation": "3518:7:0", + "nameLocation": "3480:7:0", "nodeType": "VariableDeclaration", - "scope": 274, - "src": "3510:15:0", + "scope": 269, + "src": "3472:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -11886,10 +11762,10 @@ "typeString": "uint256" }, "typeName": { - "id": 222, + "id": 217, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3510:7:0", + "src": "3472:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11899,13 +11775,13 @@ }, { "constant": false, - "id": 225, + "id": 220, "mutability": "mutable", "name": "_refundAddress", - "nameLocation": "3537:14:0", + "nameLocation": "3499:14:0", "nodeType": "VariableDeclaration", - "scope": 274, - "src": "3529:22:0", + "scope": 269, + "src": "3491:22:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -11913,10 +11789,10 @@ "typeString": "address" }, "typeName": { - "id": 224, + "id": 219, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3529:7:0", + "src": "3491:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -11927,13 +11803,13 @@ }, { "constant": false, - "id": 227, + "id": 222, "mutability": "mutable", "name": "_senderFeeRecipient", - "nameLocation": "3563:19:0", + "nameLocation": "3525:19:0", "nodeType": "VariableDeclaration", - "scope": 274, - "src": "3555:27:0", + "scope": 269, + "src": "3517:27:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -11941,10 +11817,10 @@ "typeString": "address" }, "typeName": { - "id": 226, + "id": 221, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3555:7:0", + "src": "3517:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -11955,13 +11831,13 @@ }, { "constant": false, - "id": 229, + "id": 224, "mutability": "mutable", "name": "_senderFee", - "nameLocation": "3594:10:0", + "nameLocation": "3556:10:0", "nodeType": "VariableDeclaration", - "scope": 274, - "src": "3586:18:0", + "scope": 269, + "src": "3548:18:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -11969,10 +11845,10 @@ "typeString": "uint256" }, "typeName": { - "id": 228, + "id": 223, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3586:7:0", + "src": "3548:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11981,34 +11857,34 @@ "visibility": "internal" } ], - "src": "3488:119:0" + "src": "3450:119:0" }, "returnParameters": { - "id": 231, + "id": 226, "nodeType": "ParameterList", "parameters": [], - "src": "3622:0:0" + "src": "3584:0:0" }, - "scope": 582, - "src": "3471:427:0", + "scope": 579, + "src": "3433:427:0", "stateMutability": "view", "virtual": false, "visibility": "internal" }, { "baseFunctions": [ - 868 + 865 ], "body": { - "id": 428, + "id": 425, "nodeType": "Block", - "src": "4293:1337:0", + "src": "4255:1396:0", "statements": [ { "expression": { "arguments": [ { - "id": 295, + "id": 290, "isConstant": false, "isLValue": false, "isPure": false, @@ -12016,29 +11892,29 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "4356:28:0", + "src": "4318:28:0", "subExpression": { "expression": { "baseExpression": { - "id": 291, + "id": 286, "name": "order", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 24, - "src": "4357:5:0", + "src": "4319:5:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$831_storage_$", "typeString": "mapping(bytes32 => struct IGateway.Order storage ref)" } }, - "id": 293, + "id": 288, "indexExpression": { - "id": 292, + "id": 287, "name": "_orderId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 279, - "src": "4363:8:0", + "referencedDeclaration": 274, + "src": "4325:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -12049,22 +11925,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4357:15:0", + "src": "4319:15:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage", + "typeIdentifier": "t_struct$_Order_$831_storage", "typeString": "struct IGateway.Order storage ref" } }, - "id": 294, + "id": 289, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "4373:11:0", + "memberLocation": "4335:11:0", "memberName": "isFulfilled", "nodeType": "MemberAccess", - "referencedDeclaration": 825, - "src": "4357:27:0", + "referencedDeclaration": 822, + "src": "4319:27:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -12077,14 +11953,14 @@ }, { "hexValue": "4f7264657246756c66696c6c6564", - "id": 296, + "id": 291, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "4386:16:0", + "src": "4348:16:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_84045048554d058b8a53b78300214112125a1eccddd735f23a805c1c4be2d6f5", "typeString": "literal_string \"OrderFulfilled\"" @@ -12103,7 +11979,7 @@ "typeString": "literal_string \"OrderFulfilled\"" } ], - "id": 290, + "id": 285, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -12111,13 +11987,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "4348:7:0", + "src": "4310:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 297, + "id": 292, "isConstant": false, "isLValue": false, "isPure": false, @@ -12126,22 +12002,22 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4348:55:0", + "src": "4310:55:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 298, + "id": 293, "nodeType": "ExpressionStatement", - "src": "4348:55:0" + "src": "4310:55:0" }, { "expression": { "arguments": [ { - "id": 304, + "id": 299, "isConstant": false, "isLValue": false, "isPure": false, @@ -12149,29 +12025,29 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "4415:27:0", + "src": "4377:27:0", "subExpression": { "expression": { "baseExpression": { - "id": 300, + "id": 295, "name": "order", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 24, - "src": "4416:5:0", + "src": "4378:5:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$831_storage_$", "typeString": "mapping(bytes32 => struct IGateway.Order storage ref)" } }, - "id": 302, + "id": 297, "indexExpression": { - "id": 301, + "id": 296, "name": "_orderId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 279, - "src": "4422:8:0", + "referencedDeclaration": 274, + "src": "4384:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -12182,22 +12058,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4416:15:0", + "src": "4378:15:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage", + "typeIdentifier": "t_struct$_Order_$831_storage", "typeString": "struct IGateway.Order storage ref" } }, - "id": 303, + "id": 298, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "4432:10:0", + "memberLocation": "4394:10:0", "memberName": "isRefunded", "nodeType": "MemberAccess", - "referencedDeclaration": 827, - "src": "4416:26:0", + "referencedDeclaration": 824, + "src": "4378:26:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -12210,14 +12086,14 @@ }, { "hexValue": "4f72646572526566756e646564", - "id": 305, + "id": 300, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "4444:15:0", + "src": "4406:15:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_0ab1527a936433fc64df27b599aa49d8cbaac3a88b1b3888cf4384b9e8bea9cd", "typeString": "literal_string \"OrderRefunded\"" @@ -12236,7 +12112,7 @@ "typeString": "literal_string \"OrderRefunded\"" } ], - "id": 299, + "id": 294, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -12244,13 +12120,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "4407:7:0", + "src": "4369:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 306, + "id": 301, "isConstant": false, "isLValue": false, "isPure": false, @@ -12259,31 +12135,31 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4407:53:0", + "src": "4369:53:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 307, + "id": 302, "nodeType": "ExpressionStatement", - "src": "4407:53:0" + "src": "4369:53:0" }, { "assignments": [ - 309 + 304 ], "declarations": [ { "constant": false, - "id": 309, + "id": 304, "mutability": "mutable", "name": "token", - "nameLocation": "4505:5:0", + "nameLocation": "4467:5:0", "nodeType": "VariableDeclaration", - "scope": 428, - "src": "4497:13:0", + "scope": 425, + "src": "4459:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -12291,10 +12167,10 @@ "typeString": "address" }, "typeName": { - "id": 308, + "id": 303, "name": "address", "nodeType": "ElementaryTypeName", - "src": "4497:7:0", + "src": "4459:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -12304,29 +12180,29 @@ "visibility": "internal" } ], - "id": 314, + "id": 309, "initialValue": { "expression": { "baseExpression": { - "id": 310, + "id": 305, "name": "order", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 24, - "src": "4513:5:0", + "src": "4475:5:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$831_storage_$", "typeString": "mapping(bytes32 => struct IGateway.Order storage ref)" } }, - "id": 312, + "id": 307, "indexExpression": { - "id": 311, + "id": 306, "name": "_orderId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 279, - "src": "4519:8:0", + "referencedDeclaration": 274, + "src": "4481:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -12337,33 +12213,33 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4513:15:0", + "src": "4475:15:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage", + "typeIdentifier": "t_struct$_Order_$831_storage", "typeString": "struct IGateway.Order storage ref" } }, - "id": 313, + "id": 308, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "4529:5:0", + "memberLocation": "4491:5:0", "memberName": "token", "nodeType": "MemberAccess", - "referencedDeclaration": 817, - "src": "4513:21:0", + "referencedDeclaration": 814, + "src": "4475:21:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "VariableDeclarationStatement", - "src": "4497:37:0" + "src": "4459:37:0" }, { "expression": { - "id": 320, + "id": 315, "isConstant": false, "isLValue": false, "isPure": false, @@ -12371,25 +12247,25 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 315, + "id": 310, "name": "order", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 24, - "src": "4601:5:0", + "src": "4563:5:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$831_storage_$", "typeString": "mapping(bytes32 => struct IGateway.Order storage ref)" } }, - "id": 317, + "id": 312, "indexExpression": { - "id": 316, + "id": 311, "name": "_orderId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 279, - "src": "4607:8:0", + "referencedDeclaration": 274, + "src": "4569:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -12400,22 +12276,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4601:15:0", + "src": "4563:15:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage", + "typeIdentifier": "t_struct$_Order_$831_storage", "typeString": "struct IGateway.Order storage ref" } }, - "id": 318, + "id": 313, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "4617:10:0", + "memberLocation": "4579:10:0", "memberName": "currentBPS", "nodeType": "MemberAccess", - "referencedDeclaration": 831, - "src": "4601:26:0", + "referencedDeclaration": 828, + "src": "4563:26:0", "typeDescriptions": { "typeIdentifier": "t_uint96", "typeString": "uint96" @@ -12424,26 +12300,26 @@ "nodeType": "Assignment", "operator": "-=", "rightHandSide": { - "id": 319, + "id": 314, "name": "_settlePercent", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 283, - "src": "4631:14:0", + "referencedDeclaration": 278, + "src": "4593:14:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } }, - "src": "4601:44:0", + "src": "4563:44:0", "typeDescriptions": { "typeIdentifier": "t_uint96", "typeString": "uint96" } }, - "id": 321, + "id": 316, "nodeType": "ExpressionStatement", - "src": "4601:44:0" + "src": "4563:44:0" }, { "condition": { @@ -12451,7 +12327,7 @@ "typeIdentifier": "t_uint96", "typeString": "uint96" }, - "id": 327, + "id": 322, "isConstant": false, "isLValue": false, "isPure": false, @@ -12459,25 +12335,25 @@ "leftExpression": { "expression": { "baseExpression": { - "id": 322, + "id": 317, "name": "order", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 24, - "src": "4654:5:0", + "src": "4616:5:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$831_storage_$", "typeString": "mapping(bytes32 => struct IGateway.Order storage ref)" } }, - "id": 324, + "id": 319, "indexExpression": { - "id": 323, + "id": 318, "name": "_orderId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 279, - "src": "4660:8:0", + "referencedDeclaration": 274, + "src": "4622:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -12488,22 +12364,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4654:15:0", + "src": "4616:15:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage", + "typeIdentifier": "t_struct$_Order_$831_storage", "typeString": "struct IGateway.Order storage ref" } }, - "id": 325, + "id": 320, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "4670:10:0", + "memberLocation": "4632:10:0", "memberName": "currentBPS", "nodeType": "MemberAccess", - "referencedDeclaration": 831, - "src": "4654:26:0", + "referencedDeclaration": 828, + "src": "4616:26:0", "typeDescriptions": { "typeIdentifier": "t_uint96", "typeString": "uint96" @@ -12513,37 +12389,37 @@ "operator": "==", "rightExpression": { "hexValue": "30", - "id": 326, + "id": 321, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "4684:1:0", + "src": "4646:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "4654:31:0", + "src": "4616:31:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 391, + "id": 367, "nodeType": "IfStatement", - "src": "4650:604:0", + "src": "4612:453:0", "trueBody": { - "id": 390, + "id": 366, "nodeType": "Block", - "src": "4687:567:0", + "src": "4649:416:0", "statements": [ { "expression": { - "id": 333, + "id": 328, "isConstant": false, "isLValue": false, "isPure": false, @@ -12551,25 +12427,25 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 328, + "id": 323, "name": "order", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 24, - "src": "4737:5:0", + "src": "4699:5:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$831_storage_$", "typeString": "mapping(bytes32 => struct IGateway.Order storage ref)" } }, - "id": 330, + "id": 325, "indexExpression": { - "id": 329, + "id": 324, "name": "_orderId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 279, - "src": "4743:8:0", + "referencedDeclaration": 274, + "src": "4705:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -12580,22 +12456,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4737:15:0", + "src": "4699:15:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage", + "typeIdentifier": "t_struct$_Order_$831_storage", "typeString": "struct IGateway.Order storage ref" } }, - "id": 331, + "id": 326, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "4753:11:0", + "memberLocation": "4715:11:0", "memberName": "isFulfilled", "nodeType": "MemberAccess", - "referencedDeclaration": 825, - "src": "4737:27:0", + "referencedDeclaration": 822, + "src": "4699:27:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -12605,29 +12481,29 @@ "operator": "=", "rightHandSide": { "hexValue": "74727565", - "id": 332, + "id": 327, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "4767:4:0", + "src": "4729:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "true" }, - "src": "4737:34:0", + "src": "4699:34:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 334, + "id": 329, "nodeType": "ExpressionStatement", - "src": "4737:34:0" + "src": "4699:34:0" }, { "condition": { @@ -12635,7 +12511,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 340, + "id": 335, "isConstant": false, "isLValue": false, "isPure": false, @@ -12643,25 +12519,25 @@ "leftExpression": { "expression": { "baseExpression": { - "id": 335, + "id": 330, "name": "order", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 24, - "src": "4781:5:0", + "src": "4743:5:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$831_storage_$", "typeString": "mapping(bytes32 => struct IGateway.Order storage ref)" } }, - "id": 337, + "id": 332, "indexExpression": { - "id": 336, + "id": 331, "name": "_orderId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 279, - "src": "4787:8:0", + "referencedDeclaration": 274, + "src": "4749:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -12672,22 +12548,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4781:15:0", + "src": "4743:15:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage", + "typeIdentifier": "t_struct$_Order_$831_storage", "typeString": "struct IGateway.Order storage ref" } }, - "id": 338, + "id": 333, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "4797:9:0", + "memberLocation": "4759:9:0", "memberName": "senderFee", "nodeType": "MemberAccess", - "referencedDeclaration": 821, - "src": "4781:25:0", + "referencedDeclaration": 818, + "src": "4743:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12697,33 +12573,33 @@ "operator": "!=", "rightExpression": { "hexValue": "30", - "id": 339, + "id": 334, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "4810:1:0", + "src": "4772:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "4781:30:0", + "src": "4743:30:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 370, + "id": 365, "nodeType": "IfStatement", - "src": "4777:321:0", + "src": "4739:321:0", "trueBody": { - "id": 369, + "id": 364, "nodeType": "Block", - "src": "4813:285:0", + "src": "4775:285:0", "statements": [ { "expression": { @@ -12731,25 +12607,25 @@ { "expression": { "baseExpression": { - "id": 348, + "id": 343, "name": "order", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 24, - "src": "4891:5:0", + "src": "4853:5:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$831_storage_$", "typeString": "mapping(bytes32 => struct IGateway.Order storage ref)" } }, - "id": 350, + "id": 345, "indexExpression": { - "id": 349, + "id": 344, "name": "_orderId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 279, - "src": "4897:8:0", + "referencedDeclaration": 274, + "src": "4859:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -12760,22 +12636,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4891:15:0", + "src": "4853:15:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage", + "typeIdentifier": "t_struct$_Order_$831_storage", "typeString": "struct IGateway.Order storage ref" } }, - "id": 351, + "id": 346, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "4907:18:0", + "memberLocation": "4869:18:0", "memberName": "senderFeeRecipient", "nodeType": "MemberAccess", - "referencedDeclaration": 819, - "src": "4891:34:0", + "referencedDeclaration": 816, + "src": "4853:34:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -12784,25 +12660,25 @@ { "expression": { "baseExpression": { - "id": 352, + "id": 347, "name": "order", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 24, - "src": "4932:5:0", + "src": "4894:5:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$831_storage_$", "typeString": "mapping(bytes32 => struct IGateway.Order storage ref)" } }, - "id": 354, + "id": 349, "indexExpression": { - "id": 353, + "id": 348, "name": "_orderId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 279, - "src": "4938:8:0", + "referencedDeclaration": 274, + "src": "4900:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -12813,22 +12689,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4932:15:0", + "src": "4894:15:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage", + "typeIdentifier": "t_struct$_Order_$831_storage", "typeString": "struct IGateway.Order storage ref" } }, - "id": 355, + "id": 350, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "4948:9:0", + "memberLocation": "4910:9:0", "memberName": "senderFee", "nodeType": "MemberAccess", - "referencedDeclaration": 821, - "src": "4932:25:0", + "referencedDeclaration": 818, + "src": "4894:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12851,25 +12727,25 @@ { "expression": { "baseExpression": { - "id": 342, + "id": 337, "name": "order", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 24, - "src": "4853:5:0", + "src": "4815:5:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$831_storage_$", "typeString": "mapping(bytes32 => struct IGateway.Order storage ref)" } }, - "id": 344, + "id": 339, "indexExpression": { - "id": 343, + "id": 338, "name": "_orderId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 279, - "src": "4859:8:0", + "referencedDeclaration": 274, + "src": "4821:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -12880,22 +12756,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4853:15:0", + "src": "4815:15:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage", + "typeIdentifier": "t_struct$_Order_$831_storage", "typeString": "struct IGateway.Order storage ref" } }, - "id": 345, + "id": 340, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "4869:5:0", + "memberLocation": "4831:5:0", "memberName": "token", "nodeType": "MemberAccess", - "referencedDeclaration": 817, - "src": "4853:21:0", + "referencedDeclaration": 814, + "src": "4815:21:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -12909,18 +12785,18 @@ "typeString": "address" } ], - "id": 341, + "id": 336, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2557, - "src": "4846:6:0", + "referencedDeclaration": 2554, + "src": "4808:6:0", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$2557_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$2554_$", "typeString": "type(contract IERC20)" } }, - "id": 346, + "id": 341, "isConstant": false, "isLValue": false, "isPure": false, @@ -12929,29 +12805,29 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4846:29:0", + "src": "4808:29:0", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$2557", + "typeIdentifier": "t_contract$_IERC20_$2554", "typeString": "contract IERC20" } }, - "id": 347, + "id": 342, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "4876:8:0", + "memberLocation": "4838:8:0", "memberName": "transfer", "nodeType": "MemberAccess", - "referencedDeclaration": 2524, - "src": "4846:38:0", + "referencedDeclaration": 2521, + "src": "4808:38:0", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,uint256) external returns (bool)" } }, - "id": 356, + "id": 351, "isConstant": false, "isLValue": false, "isPure": false, @@ -12960,16 +12836,16 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4846:117:0", + "src": "4808:117:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 357, + "id": 352, "nodeType": "ExpressionStatement", - "src": "4846:117:0" + "src": "4808:117:0" }, { "eventCall": { @@ -12977,25 +12853,25 @@ { "expression": { "baseExpression": { - "id": 359, + "id": 354, "name": "order", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 24, - "src": "5020:5:0", + "src": "4982:5:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$831_storage_$", "typeString": "mapping(bytes32 => struct IGateway.Order storage ref)" } }, - "id": 361, + "id": 356, "indexExpression": { - "id": 360, + "id": 355, "name": "_orderId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 279, - "src": "5026:8:0", + "referencedDeclaration": 274, + "src": "4988:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -13006,22 +12882,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "5020:15:0", + "src": "4982:15:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage", + "typeIdentifier": "t_struct$_Order_$831_storage", "typeString": "struct IGateway.Order storage ref" } }, - "id": 362, + "id": 357, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "5036:18:0", + "memberLocation": "4998:18:0", "memberName": "senderFeeRecipient", "nodeType": "MemberAccess", - "referencedDeclaration": 819, - "src": "5020:34:0", + "referencedDeclaration": 816, + "src": "4982:34:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -13030,25 +12906,25 @@ { "expression": { "baseExpression": { - "id": 363, + "id": 358, "name": "order", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 24, - "src": "5061:5:0", + "src": "5023:5:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$831_storage_$", "typeString": "mapping(bytes32 => struct IGateway.Order storage ref)" } }, - "id": 365, + "id": 360, "indexExpression": { - "id": 364, + "id": 359, "name": "_orderId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 279, - "src": "5067:8:0", + "referencedDeclaration": 274, + "src": "5029:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -13059,22 +12935,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "5061:15:0", + "src": "5023:15:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage", + "typeIdentifier": "t_struct$_Order_$831_storage", "typeString": "struct IGateway.Order storage ref" } }, - "id": 366, + "id": 361, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "5077:9:0", + "memberLocation": "5039:9:0", "memberName": "senderFee", "nodeType": "MemberAccess", - "referencedDeclaration": 821, - "src": "5061:25:0", + "referencedDeclaration": 818, + "src": "5023:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13092,18 +12968,18 @@ "typeString": "uint256" } ], - "id": 358, + "id": 353, "name": "SenderFeeTransferred", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 813, - "src": "4993:20:0", + "referencedDeclaration": 810, + "src": "4955:20:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 367, + "id": 362, "isConstant": false, "isLValue": false, "isPure": false, @@ -13112,27 +12988,75 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "4993:99:0", + "src": "4955:99:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 368, + "id": 363, "nodeType": "EmitStatement", - "src": "4988:104:0" + "src": "4950:104:0" } ] } + } + ] + } + }, + { + "assignments": [ + 369 + ], + "declarations": [ + { + "constant": false, + "id": 369, + "mutability": "mutable", + "name": "liquidityProviderAmount", + "nameLocation": "5113:23:0", + "nodeType": "VariableDeclaration", + "scope": 425, + "src": "5105:31:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" }, - { - "condition": { + "typeName": { + "id": 368, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5105:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 379, + "initialValue": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 378, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "components": [ + { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 376, + "id": 375, "isConstant": false, "isLValue": false, "isPure": false, @@ -13140,25 +13064,25 @@ "leftExpression": { "expression": { "baseExpression": { - "id": 371, + "id": 370, "name": "order", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 24, - "src": "5107:5:0", + "src": "5140:5:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$831_storage_$", "typeString": "mapping(bytes32 => struct IGateway.Order storage ref)" } }, - "id": 373, + "id": 372, "indexExpression": { - "id": 372, + "id": 371, "name": "_orderId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 279, - "src": "5113:8:0", + "referencedDeclaration": 274, + "src": "5146:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -13169,243 +13093,182 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "5107:15:0", + "src": "5140:15:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage", + "typeIdentifier": "t_struct$_Order_$831_storage", "typeString": "struct IGateway.Order storage ref" } }, - "id": 374, + "id": 373, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "5123:11:0", - "memberName": "protocolFee", + "memberLocation": "5156:6:0", + "memberName": "amount", "nodeType": "MemberAccess", - "referencedDeclaration": 823, - "src": "5107:27:0", + "referencedDeclaration": 830, + "src": "5140:22:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", - "operator": "!=", + "operator": "*", "rightExpression": { - "hexValue": "30", - "id": 375, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5138:1:0", + "id": 374, + "name": "_settlePercent", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 278, + "src": "5165:14:0", "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } }, - "src": "5107:32:0", + "src": "5140:39:0", "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } - }, - "id": 389, - "nodeType": "IfStatement", - "src": "5103:147:0", - "trueBody": { - "id": 388, - "nodeType": "Block", - "src": "5141:109:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 381, - "name": "treasuryAddress", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 593, - "src": "5199:15:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "expression": { - "baseExpression": { - "id": 382, - "name": "order", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 24, - "src": "5216:5:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", - "typeString": "mapping(bytes32 => struct IGateway.Order storage ref)" - } - }, - "id": 384, - "indexExpression": { - "id": 383, - "name": "_orderId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 279, - "src": "5222:8:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "5216:15:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage", - "typeString": "struct IGateway.Order storage ref" - } - }, - "id": 385, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "5232:11:0", - "memberName": "protocolFee", - "nodeType": "MemberAccess", - "referencedDeclaration": 823, - "src": "5216:27:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "arguments": [ - { - "id": 378, - "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 309, - "src": "5183:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 377, - "name": "IERC20", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2557, - "src": "5176:6:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$2557_$", - "typeString": "type(contract IERC20)" - } - }, - "id": 379, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "5176:13:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$2557", - "typeString": "contract IERC20" - } - }, - "id": 380, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberLocation": "5190:8:0", - "memberName": "transfer", - "nodeType": "MemberAccess", - "referencedDeclaration": 2524, - "src": "5176:22:0", - "typeDescriptions": { - "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", - "typeString": "function (address,uint256) external returns (bool)" - } - }, - "id": 386, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "nameLocations": [], - "names": [], - "nodeType": "FunctionCall", - "src": "5176:68:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 387, - "nodeType": "ExpressionStatement", - "src": "5176:68:0" - } - ] } + ], + "id": 376, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "5139:41:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "/", + "rightExpression": { + "id": 377, + "name": "MAX_BPS", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 586, + "src": "5183:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5139:51:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "5105:85:0" + }, + { + "expression": { + "id": 385, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 380, + "name": "order", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24, + "src": "5194:5:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$831_storage_$", + "typeString": "mapping(bytes32 => struct IGateway.Order storage ref)" + } + }, + "id": 382, + "indexExpression": { + "id": 381, + "name": "_orderId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 274, + "src": "5200:8:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5194:15:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Order_$831_storage", + "typeString": "struct IGateway.Order storage ref" + } + }, + "id": 383, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "5210:6:0", + "memberName": "amount", + "nodeType": "MemberAccess", + "referencedDeclaration": 830, + "src": "5194:22:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" } - ] - } + }, + "nodeType": "Assignment", + "operator": "-=", + "rightHandSide": { + "id": 384, + "name": "liquidityProviderAmount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 369, + "src": "5220:23:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5194:49:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 386, + "nodeType": "ExpressionStatement", + "src": "5194:49:0" }, { "assignments": [ - 393 + 388 ], "declarations": [ { "constant": false, - "id": 393, + "id": 388, "mutability": "mutable", - "name": "liquidityProviderAmount", - "nameLocation": "5302:23:0", + "name": "protocolFee", + "nameLocation": "5256:11:0", "nodeType": "VariableDeclaration", - "scope": 428, - "src": "5294:31:0", + "scope": 425, + "src": "5248:19:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -13413,10 +13276,10 @@ "typeString": "uint256" }, "typeName": { - "id": 392, + "id": 387, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5294:7:0", + "src": "5248:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13425,13 +13288,13 @@ "visibility": "internal" } ], - "id": 403, + "id": 395, "initialValue": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 402, + "id": 394, "isConstant": false, "isLValue": false, "isPure": false, @@ -13443,59 +13306,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 399, + "id": 391, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "expression": { - "baseExpression": { - "id": 394, - "name": "order", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 24, - "src": "5329:5:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", - "typeString": "mapping(bytes32 => struct IGateway.Order storage ref)" - } - }, - "id": 396, - "indexExpression": { - "id": 395, - "name": "_orderId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 279, - "src": "5335:8:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "5329:15:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage", - "typeString": "struct IGateway.Order storage ref" - } - }, - "id": 397, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberLocation": "5345:6:0", - "memberName": "amount", - "nodeType": "MemberAccess", - "referencedDeclaration": 833, - "src": "5329:22:0", + "id": 389, + "name": "liquidityProviderAmount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 369, + "src": "5271:23:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13504,32 +13326,32 @@ "nodeType": "BinaryOperation", "operator": "*", "rightExpression": { - "id": 398, - "name": "_settlePercent", + "id": 390, + "name": "protocolFeePercent", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 283, - "src": "5354:14:0", + "referencedDeclaration": 588, + "src": "5297:18:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } }, - "src": "5329:39:0", + "src": "5271:44:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 400, + "id": 392, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "5328:41:0", + "src": "5270:46:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13538,132 +13360,214 @@ "nodeType": "BinaryOperation", "operator": "/", "rightExpression": { - "id": 401, + "id": 393, "name": "MAX_BPS", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 589, - "src": "5372:7:0", + "referencedDeclaration": 586, + "src": "5319:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "5328:51:0", + "src": "5270:56:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "5294:85:0" + "src": "5248:78:0" }, { "expression": { - "id": 409, + "id": 398, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { + "id": 396, + "name": "liquidityProviderAmount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 369, + "src": "5330:23:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "-=", + "rightHandSide": { + "id": 397, + "name": "protocolFee", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 388, + "src": "5357:11:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5330:38:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 399, + "nodeType": "ExpressionStatement", + "src": "5330:38:0" + }, + { + "expression": { + "arguments": [ + { + "id": 404, + "name": "treasuryAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 590, + "src": "5423:15:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 405, + "name": "protocolFee", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 388, + "src": "5440:11:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], "expression": { - "baseExpression": { - "id": 404, - "name": "order", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 24, - "src": "5383:5:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", - "typeString": "mapping(bytes32 => struct IGateway.Order storage ref)" + "arguments": [ + { + "id": 401, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 304, + "src": "5407:5:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } } - }, - "id": 406, - "indexExpression": { - "id": 405, - "name": "_orderId", + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 400, + "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 279, - "src": "5389:8:0", + "referencedDeclaration": 2554, + "src": "5400:6:0", "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" + "typeIdentifier": "t_type$_t_contract$_IERC20_$2554_$", + "typeString": "type(contract IERC20)" } }, + "id": 402, "isConstant": false, - "isLValue": true, + "isLValue": false, "isPure": false, + "kind": "typeConversion", "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "5383:15:0", + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5400:13:0", + "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage", - "typeString": "struct IGateway.Order storage ref" + "typeIdentifier": "t_contract$_IERC20_$2554", + "typeString": "contract IERC20" } }, - "id": 407, + "id": 403, "isConstant": false, - "isLValue": true, + "isLValue": false, "isPure": false, - "lValueRequested": true, - "memberLocation": "5399:6:0", - "memberName": "amount", + "lValueRequested": false, + "memberLocation": "5414:8:0", + "memberName": "transfer", "nodeType": "MemberAccess", - "referencedDeclaration": 833, - "src": "5383:22:0", + "referencedDeclaration": 2521, + "src": "5400:22:0", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "-=", - "rightHandSide": { - "id": 408, - "name": "liquidityProviderAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 393, - "src": "5409:23:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", + "typeString": "function (address,uint256) external returns (bool)" } }, - "src": "5383:49:0", + "id": 406, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5400:52:0", + "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_bool", + "typeString": "bool" } }, - "id": 410, + "id": 407, "nodeType": "ExpressionStatement", - "src": "5383:49:0" + "src": "5400:52:0" }, { "expression": { "arguments": [ { - "id": 415, + "id": 412, "name": "_liquidityProvider", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 281, - "src": "5459:18:0", + "referencedDeclaration": 276, + "src": "5480:18:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 416, + "id": 413, "name": "liquidityProviderAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 393, - "src": "5479:23:0", + "referencedDeclaration": 369, + "src": "5500:23:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13684,12 +13588,12 @@ "expression": { "arguments": [ { - "id": 412, + "id": 409, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 309, - "src": "5443:5:0", + "referencedDeclaration": 304, + "src": "5464:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -13703,18 +13607,18 @@ "typeString": "address" } ], - "id": 411, + "id": 408, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2557, - "src": "5436:6:0", + "referencedDeclaration": 2554, + "src": "5457:6:0", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$2557_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$2554_$", "typeString": "type(contract IERC20)" } }, - "id": 413, + "id": 410, "isConstant": false, "isLValue": false, "isPure": false, @@ -13723,29 +13627,29 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5436:13:0", + "src": "5457:13:0", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$2557", + "typeIdentifier": "t_contract$_IERC20_$2554", "typeString": "contract IERC20" } }, - "id": 414, + "id": 411, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "5450:8:0", + "memberLocation": "5471:8:0", "memberName": "transfer", "nodeType": "MemberAccess", - "referencedDeclaration": 2524, - "src": "5436:22:0", + "referencedDeclaration": 2521, + "src": "5457:22:0", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,uint256) external returns (bool)" } }, - "id": 417, + "id": 414, "isConstant": false, "isLValue": false, "isPure": false, @@ -13754,63 +13658,63 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5436:67:0", + "src": "5457:67:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 418, + "id": 415, "nodeType": "ExpressionStatement", - "src": "5436:67:0" + "src": "5457:67:0" }, { "eventCall": { "arguments": [ { - "id": 420, + "id": 417, "name": "_splitOrderId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 277, - "src": "5550:13:0", + "referencedDeclaration": 272, + "src": "5571:13:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 421, + "id": 418, "name": "_orderId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 279, - "src": "5565:8:0", + "referencedDeclaration": 274, + "src": "5586:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 422, + "id": 419, "name": "_liquidityProvider", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 281, - "src": "5575:18:0", + "referencedDeclaration": 276, + "src": "5596:18:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 423, + "id": 420, "name": "_settlePercent", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 283, - "src": "5595:14:0", + "referencedDeclaration": 278, + "src": "5616:14:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -13836,18 +13740,18 @@ "typeString": "uint64" } ], - "id": 419, + "id": 416, "name": "OrderSettled", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 799, - "src": "5537:12:0", + "referencedDeclaration": 796, + "src": "5558:12:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_bytes32_$_t_address_$_t_uint96_$returns$__$", "typeString": "function (bytes32,bytes32,address,uint96)" } }, - "id": 424, + "id": 421, "isConstant": false, "isLValue": false, "isPure": false, @@ -13856,85 +13760,85 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5537:73:0", + "src": "5558:73:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 425, + "id": 422, "nodeType": "EmitStatement", - "src": "5532:78:0" + "src": "5553:78:0" }, { "expression": { "hexValue": "74727565", - "id": 426, + "id": 423, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "5622:4:0", + "src": "5643:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "true" }, - "functionReturnParameters": 289, - "id": 427, + "functionReturnParameters": 284, + "id": 424, "nodeType": "Return", - "src": "5615:11:0" + "src": "5636:11:0" } ] }, "documentation": { - "id": 275, + "id": 270, "nodeType": "StructuredDocumentation", - "src": "4099:34:0", + "src": "4061:34:0", "text": "@dev See {settle-IGateway}. " }, "functionSelector": "f22ee704", - "id": 429, + "id": 426, "implemented": true, "kind": "function", "modifiers": [ { - "id": 286, + "id": 281, "kind": "modifierInvocation", "modifierName": { - "id": 285, + "id": 280, "name": "onlyAggregator", "nameLocations": [ - "4263:14:0" + "4225:14:0" ], "nodeType": "IdentifierPath", "referencedDeclaration": 70, - "src": "4263:14:0" + "src": "4225:14:0" }, "nodeType": "ModifierInvocation", - "src": "4263:14:0" + "src": "4225:14:0" } ], "name": "settle", - "nameLocation": "4144:6:0", + "nameLocation": "4106:6:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 284, + "id": 279, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 277, + "id": 272, "mutability": "mutable", "name": "_splitOrderId", - "nameLocation": "4162:13:0", + "nameLocation": "4124:13:0", "nodeType": "VariableDeclaration", - "scope": 429, - "src": "4154:21:0", + "scope": 426, + "src": "4116:21:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -13942,10 +13846,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 276, + "id": 271, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "4154:7:0", + "src": "4116:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -13955,13 +13859,13 @@ }, { "constant": false, - "id": 279, + "id": 274, "mutability": "mutable", "name": "_orderId", - "nameLocation": "4187:8:0", + "nameLocation": "4149:8:0", "nodeType": "VariableDeclaration", - "scope": 429, - "src": "4179:16:0", + "scope": 426, + "src": "4141:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -13969,10 +13873,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 278, + "id": 273, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "4179:7:0", + "src": "4141:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -13982,13 +13886,13 @@ }, { "constant": false, - "id": 281, + "id": 276, "mutability": "mutable", "name": "_liquidityProvider", - "nameLocation": "4207:18:0", + "nameLocation": "4169:18:0", "nodeType": "VariableDeclaration", - "scope": 429, - "src": "4199:26:0", + "scope": 426, + "src": "4161:26:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -13996,10 +13900,10 @@ "typeString": "address" }, "typeName": { - "id": 280, + "id": 275, "name": "address", "nodeType": "ElementaryTypeName", - "src": "4199:7:0", + "src": "4161:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -14010,13 +13914,13 @@ }, { "constant": false, - "id": 283, + "id": 278, "mutability": "mutable", "name": "_settlePercent", - "nameLocation": "4236:14:0", + "nameLocation": "4198:14:0", "nodeType": "VariableDeclaration", - "scope": 429, - "src": "4229:21:0", + "scope": 426, + "src": "4191:21:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14024,10 +13928,10 @@ "typeString": "uint64" }, "typeName": { - "id": 282, + "id": 277, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "4229:6:0", + "src": "4191:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -14036,21 +13940,21 @@ "visibility": "internal" } ], - "src": "4150:103:0" + "src": "4112:103:0" }, "returnParameters": { - "id": 289, + "id": 284, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 288, + "id": 283, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 429, - "src": "4287:4:0", + "scope": 426, + "src": "4249:4:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14058,10 +13962,10 @@ "typeString": "bool" }, "typeName": { - "id": 287, + "id": 282, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "4287:4:0", + "src": "4249:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -14070,28 +13974,28 @@ "visibility": "internal" } ], - "src": "4286:6:0" + "src": "4248:6:0" }, - "scope": 582, - "src": "4135:1495:0", + "scope": 579, + "src": "4097:1554:0", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { "baseFunctions": [ - 878 + 875 ], "body": { - "id": 534, + "id": 531, "nodeType": "Block", - "src": "5756:839:0", + "src": "5777:839:0", "statements": [ { "expression": { "arguments": [ { - "id": 446, + "id": 443, "isConstant": false, "isLValue": false, "isPure": false, @@ -14099,29 +14003,29 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "5819:28:0", + "src": "5840:28:0", "subExpression": { "expression": { "baseExpression": { - "id": 442, + "id": 439, "name": "order", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 24, - "src": "5820:5:0", + "src": "5841:5:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$831_storage_$", "typeString": "mapping(bytes32 => struct IGateway.Order storage ref)" } }, - "id": 444, + "id": 441, "indexExpression": { - "id": 443, + "id": 440, "name": "_orderId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 434, - "src": "5826:8:0", + "referencedDeclaration": 431, + "src": "5847:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -14132,22 +14036,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "5820:15:0", + "src": "5841:15:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage", + "typeIdentifier": "t_struct$_Order_$831_storage", "typeString": "struct IGateway.Order storage ref" } }, - "id": 445, + "id": 442, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "5836:11:0", + "memberLocation": "5857:11:0", "memberName": "isFulfilled", "nodeType": "MemberAccess", - "referencedDeclaration": 825, - "src": "5820:27:0", + "referencedDeclaration": 822, + "src": "5841:27:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -14160,14 +14064,14 @@ }, { "hexValue": "4f7264657246756c66696c6c6564", - "id": 447, + "id": 444, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "5849:16:0", + "src": "5870:16:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_84045048554d058b8a53b78300214112125a1eccddd735f23a805c1c4be2d6f5", "typeString": "literal_string \"OrderFulfilled\"" @@ -14186,7 +14090,7 @@ "typeString": "literal_string \"OrderFulfilled\"" } ], - "id": 441, + "id": 438, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -14194,13 +14098,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "5811:7:0", + "src": "5832:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 448, + "id": 445, "isConstant": false, "isLValue": false, "isPure": false, @@ -14209,22 +14113,22 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5811:55:0", + "src": "5832:55:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 449, + "id": 446, "nodeType": "ExpressionStatement", - "src": "5811:55:0" + "src": "5832:55:0" }, { "expression": { "arguments": [ { - "id": 455, + "id": 452, "isConstant": false, "isLValue": false, "isPure": false, @@ -14232,29 +14136,29 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "5878:27:0", + "src": "5899:27:0", "subExpression": { "expression": { "baseExpression": { - "id": 451, + "id": 448, "name": "order", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 24, - "src": "5879:5:0", + "src": "5900:5:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$831_storage_$", "typeString": "mapping(bytes32 => struct IGateway.Order storage ref)" } }, - "id": 453, + "id": 450, "indexExpression": { - "id": 452, + "id": 449, "name": "_orderId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 434, - "src": "5885:8:0", + "referencedDeclaration": 431, + "src": "5906:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -14265,22 +14169,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "5879:15:0", + "src": "5900:15:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage", + "typeIdentifier": "t_struct$_Order_$831_storage", "typeString": "struct IGateway.Order storage ref" } }, - "id": 454, + "id": 451, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "5895:10:0", + "memberLocation": "5916:10:0", "memberName": "isRefunded", "nodeType": "MemberAccess", - "referencedDeclaration": 827, - "src": "5879:26:0", + "referencedDeclaration": 824, + "src": "5900:26:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -14293,14 +14197,14 @@ }, { "hexValue": "4f72646572526566756e646564", - "id": 456, + "id": 453, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "5907:15:0", + "src": "5928:15:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_0ab1527a936433fc64df27b599aa49d8cbaac3a88b1b3888cf4384b9e8bea9cd", "typeString": "literal_string \"OrderRefunded\"" @@ -14319,7 +14223,7 @@ "typeString": "literal_string \"OrderRefunded\"" } ], - "id": 450, + "id": 447, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -14327,13 +14231,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "5870:7:0", + "src": "5891:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 457, + "id": 454, "isConstant": false, "isLValue": false, "isPure": false, @@ -14342,16 +14246,16 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5870:53:0", + "src": "5891:53:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 458, + "id": 455, "nodeType": "ExpressionStatement", - "src": "5870:53:0" + "src": "5891:53:0" }, { "expression": { @@ -14361,7 +14265,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 465, + "id": 462, "isConstant": false, "isLValue": false, "isPure": false, @@ -14369,25 +14273,25 @@ "leftExpression": { "expression": { "baseExpression": { - "id": 460, + "id": 457, "name": "order", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 24, - "src": "5935:5:0", + "src": "5956:5:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$831_storage_$", "typeString": "mapping(bytes32 => struct IGateway.Order storage ref)" } }, - "id": 462, + "id": 459, "indexExpression": { - "id": 461, + "id": 458, "name": "_orderId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 434, - "src": "5941:8:0", + "referencedDeclaration": 431, + "src": "5962:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -14398,22 +14302,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "5935:15:0", + "src": "5956:15:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage", + "typeIdentifier": "t_struct$_Order_$831_storage", "typeString": "struct IGateway.Order storage ref" } }, - "id": 463, + "id": 460, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "5951:11:0", + "memberLocation": "5972:11:0", "memberName": "protocolFee", "nodeType": "MemberAccess", - "referencedDeclaration": 823, - "src": "5935:27:0", + "referencedDeclaration": 820, + "src": "5956:27:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14422,18 +14326,18 @@ "nodeType": "BinaryOperation", "operator": ">=", "rightExpression": { - "id": 464, + "id": 461, "name": "_fee", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 432, - "src": "5966:4:0", + "referencedDeclaration": 429, + "src": "5987:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "5935:35:0", + "src": "5956:35:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -14441,14 +14345,14 @@ }, { "hexValue": "4665654578636565647350726f746f636f6c466565", - "id": 466, + "id": 463, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "5972:23:0", + "src": "5993:23:0", "typeDescriptions": { "typeIdentifier": "t_stringliteral_c06b87282d804789c7604f19c70a4ed32c29ae2e290ed8b49435ec1484c8a5de", "typeString": "literal_string \"FeeExceedsProtocolFee\"" @@ -14467,7 +14371,7 @@ "typeString": "literal_string \"FeeExceedsProtocolFee\"" } ], - "id": 459, + "id": 456, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -14475,13 +14379,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "5927:7:0", + "src": "5948:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 467, + "id": 464, "isConstant": false, "isLValue": false, "isPure": false, @@ -14490,39 +14394,39 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "5927:69:0", + "src": "5948:69:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 468, + "id": 465, "nodeType": "ExpressionStatement", - "src": "5927:69:0" + "src": "5948:69:0" }, { "expression": { "arguments": [ { - "id": 476, + "id": 473, "name": "treasuryAddress", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 593, - "src": "6081:15:0", + "referencedDeclaration": 590, + "src": "6102:15:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 477, + "id": 474, "name": "_fee", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 432, - "src": "6098:4:0", + "referencedDeclaration": 429, + "src": "6119:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14545,25 +14449,25 @@ { "expression": { "baseExpression": { - "id": 470, + "id": 467, "name": "order", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 24, - "src": "6049:5:0", + "src": "6070:5:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$831_storage_$", "typeString": "mapping(bytes32 => struct IGateway.Order storage ref)" } }, - "id": 472, + "id": 469, "indexExpression": { - "id": 471, + "id": 468, "name": "_orderId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 434, - "src": "6055:8:0", + "referencedDeclaration": 431, + "src": "6076:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -14574,22 +14478,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6049:15:0", + "src": "6070:15:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage", + "typeIdentifier": "t_struct$_Order_$831_storage", "typeString": "struct IGateway.Order storage ref" } }, - "id": 473, + "id": 470, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "6065:5:0", + "memberLocation": "6086:5:0", "memberName": "token", "nodeType": "MemberAccess", - "referencedDeclaration": 817, - "src": "6049:21:0", + "referencedDeclaration": 814, + "src": "6070:21:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -14603,18 +14507,18 @@ "typeString": "address" } ], - "id": 469, + "id": 466, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2557, - "src": "6042:6:0", + "referencedDeclaration": 2554, + "src": "6063:6:0", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$2557_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$2554_$", "typeString": "type(contract IERC20)" } }, - "id": 474, + "id": 471, "isConstant": false, "isLValue": false, "isPure": false, @@ -14623,29 +14527,29 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6042:29:0", + "src": "6063:29:0", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$2557", + "typeIdentifier": "t_contract$_IERC20_$2554", "typeString": "contract IERC20" } }, - "id": 475, + "id": 472, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "6072:8:0", + "memberLocation": "6093:8:0", "memberName": "transfer", "nodeType": "MemberAccess", - "referencedDeclaration": 2524, - "src": "6042:38:0", + "referencedDeclaration": 2521, + "src": "6063:38:0", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,uint256) external returns (bool)" } }, - "id": 478, + "id": 475, "isConstant": false, "isLValue": false, "isPure": false, @@ -14654,20 +14558,20 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6042:61:0", + "src": "6063:61:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 479, + "id": 476, "nodeType": "ExpressionStatement", - "src": "6042:61:0" + "src": "6063:61:0" }, { "expression": { - "id": 485, + "id": 482, "isConstant": false, "isLValue": false, "isPure": false, @@ -14675,25 +14579,25 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 480, + "id": 477, "name": "order", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 24, - "src": "6132:5:0", + "src": "6153:5:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$831_storage_$", "typeString": "mapping(bytes32 => struct IGateway.Order storage ref)" } }, - "id": 482, + "id": 479, "indexExpression": { - "id": 481, + "id": 478, "name": "_orderId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 434, - "src": "6138:8:0", + "referencedDeclaration": 431, + "src": "6159:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -14704,22 +14608,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6132:15:0", + "src": "6153:15:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage", + "typeIdentifier": "t_struct$_Order_$831_storage", "typeString": "struct IGateway.Order storage ref" } }, - "id": 483, + "id": 480, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "6148:10:0", + "memberLocation": "6169:10:0", "memberName": "isRefunded", "nodeType": "MemberAccess", - "referencedDeclaration": 827, - "src": "6132:26:0", + "referencedDeclaration": 824, + "src": "6153:26:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -14729,33 +14633,33 @@ "operator": "=", "rightHandSide": { "hexValue": "74727565", - "id": 484, + "id": 481, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "6161:4:0", + "src": "6182:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "true" }, - "src": "6132:33:0", + "src": "6153:33:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 486, + "id": 483, "nodeType": "ExpressionStatement", - "src": "6132:33:0" + "src": "6153:33:0" }, { "expression": { - "id": 492, + "id": 489, "isConstant": false, "isLValue": false, "isPure": false, @@ -14763,25 +14667,25 @@ "leftHandSide": { "expression": { "baseExpression": { - "id": 487, + "id": 484, "name": "order", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 24, - "src": "6169:5:0", + "src": "6190:5:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$831_storage_$", "typeString": "mapping(bytes32 => struct IGateway.Order storage ref)" } }, - "id": 489, + "id": 486, "indexExpression": { - "id": 488, + "id": 485, "name": "_orderId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 434, - "src": "6175:8:0", + "referencedDeclaration": 431, + "src": "6196:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -14792,22 +14696,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6169:15:0", + "src": "6190:15:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage", + "typeIdentifier": "t_struct$_Order_$831_storage", "typeString": "struct IGateway.Order storage ref" } }, - "id": 490, + "id": 487, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, - "memberLocation": "6185:10:0", + "memberLocation": "6206:10:0", "memberName": "currentBPS", "nodeType": "MemberAccess", - "referencedDeclaration": 831, - "src": "6169:26:0", + "referencedDeclaration": 828, + "src": "6190:26:0", "typeDescriptions": { "typeIdentifier": "t_uint96", "typeString": "uint96" @@ -14817,44 +14721,44 @@ "operator": "=", "rightHandSide": { "hexValue": "30", - "id": 491, + "id": 488, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "6198:1:0", + "src": "6219:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "6169:30:0", + "src": "6190:30:0", "typeDescriptions": { "typeIdentifier": "t_uint96", "typeString": "uint96" } }, - "id": 493, + "id": 490, "nodeType": "ExpressionStatement", - "src": "6169:30:0" + "src": "6190:30:0" }, { "assignments": [ - 495 + 492 ], "declarations": [ { "constant": false, - "id": 495, + "id": 492, "mutability": "mutable", "name": "refundAmount", - "nameLocation": "6246:12:0", + "nameLocation": "6267:12:0", "nodeType": "VariableDeclaration", - "scope": 534, - "src": "6238:20:0", + "scope": 531, + "src": "6259:20:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14862,10 +14766,10 @@ "typeString": "uint256" }, "typeName": { - "id": 494, + "id": 491, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "6238:7:0", + "src": "6259:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14874,13 +14778,13 @@ "visibility": "internal" } ], - "id": 507, + "id": 504, "initialValue": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 506, + "id": 503, "isConstant": false, "isLValue": false, "isPure": false, @@ -14890,7 +14794,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 504, + "id": 501, "isConstant": false, "isLValue": false, "isPure": false, @@ -14898,25 +14802,25 @@ "leftExpression": { "expression": { "baseExpression": { - "id": 496, + "id": 493, "name": "order", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 24, - "src": "6261:5:0", + "src": "6282:5:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$831_storage_$", "typeString": "mapping(bytes32 => struct IGateway.Order storage ref)" } }, - "id": 498, + "id": 495, "indexExpression": { - "id": 497, + "id": 494, "name": "_orderId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 434, - "src": "6267:8:0", + "referencedDeclaration": 431, + "src": "6288:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -14927,22 +14831,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6261:15:0", + "src": "6282:15:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage", + "typeIdentifier": "t_struct$_Order_$831_storage", "typeString": "struct IGateway.Order storage ref" } }, - "id": 499, + "id": 496, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "6277:6:0", + "memberLocation": "6298:6:0", "memberName": "amount", "nodeType": "MemberAccess", - "referencedDeclaration": 833, - "src": "6261:22:0", + "referencedDeclaration": 830, + "src": "6282:22:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14953,25 +14857,25 @@ "rightExpression": { "expression": { "baseExpression": { - "id": 500, + "id": 497, "name": "order", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 24, - "src": "6286:5:0", + "src": "6307:5:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$831_storage_$", "typeString": "mapping(bytes32 => struct IGateway.Order storage ref)" } }, - "id": 502, + "id": 499, "indexExpression": { - "id": 501, + "id": 498, "name": "_orderId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 434, - "src": "6292:8:0", + "referencedDeclaration": 431, + "src": "6313:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -14982,28 +14886,28 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6286:15:0", + "src": "6307:15:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage", + "typeIdentifier": "t_struct$_Order_$831_storage", "typeString": "struct IGateway.Order storage ref" } }, - "id": 503, + "id": 500, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "6302:11:0", + "memberLocation": "6323:11:0", "memberName": "protocolFee", "nodeType": "MemberAccess", - "referencedDeclaration": 823, - "src": "6286:27:0", + "referencedDeclaration": 820, + "src": "6307:27:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "6261:52:0", + "src": "6282:52:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15012,25 +14916,25 @@ "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { - "id": 505, + "id": 502, "name": "_fee", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 432, - "src": "6316:4:0", + "referencedDeclaration": 429, + "src": "6337:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "6261:59:0", + "src": "6282:59:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "6238:82:0" + "src": "6259:82:0" }, { "expression": { @@ -15038,25 +14942,25 @@ { "expression": { "baseExpression": { - "id": 515, + "id": 512, "name": "order", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 24, - "src": "6433:5:0", + "src": "6454:5:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$831_storage_$", "typeString": "mapping(bytes32 => struct IGateway.Order storage ref)" } }, - "id": 517, + "id": 514, "indexExpression": { - "id": 516, + "id": 513, "name": "_orderId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 434, - "src": "6439:8:0", + "referencedDeclaration": 431, + "src": "6460:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -15067,22 +14971,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6433:15:0", + "src": "6454:15:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage", + "typeIdentifier": "t_struct$_Order_$831_storage", "typeString": "struct IGateway.Order storage ref" } }, - "id": 518, + "id": 515, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "6449:13:0", + "memberLocation": "6470:13:0", "memberName": "refundAddress", "nodeType": "MemberAccess", - "referencedDeclaration": 829, - "src": "6433:29:0", + "referencedDeclaration": 826, + "src": "6454:29:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -15093,18 +14997,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 524, + "id": 521, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 519, + "id": 516, "name": "refundAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 495, - "src": "6467:12:0", + "referencedDeclaration": 492, + "src": "6488:12:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15115,25 +15019,25 @@ "rightExpression": { "expression": { "baseExpression": { - "id": 520, + "id": 517, "name": "order", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 24, - "src": "6482:5:0", + "src": "6503:5:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$831_storage_$", "typeString": "mapping(bytes32 => struct IGateway.Order storage ref)" } }, - "id": 522, + "id": 519, "indexExpression": { - "id": 521, + "id": 518, "name": "_orderId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 434, - "src": "6488:8:0", + "referencedDeclaration": 431, + "src": "6509:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -15144,28 +15048,28 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6482:15:0", + "src": "6503:15:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage", + "typeIdentifier": "t_struct$_Order_$831_storage", "typeString": "struct IGateway.Order storage ref" } }, - "id": 523, + "id": 520, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "6498:9:0", + "memberLocation": "6519:9:0", "memberName": "senderFee", "nodeType": "MemberAccess", - "referencedDeclaration": 821, - "src": "6482:25:0", + "referencedDeclaration": 818, + "src": "6503:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "6467:40:0", + "src": "6488:40:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15188,25 +15092,25 @@ { "expression": { "baseExpression": { - "id": 509, + "id": 506, "name": "order", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 24, - "src": "6397:5:0", + "src": "6418:5:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$831_storage_$", "typeString": "mapping(bytes32 => struct IGateway.Order storage ref)" } }, - "id": 511, + "id": 508, "indexExpression": { - "id": 510, + "id": 507, "name": "_orderId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 434, - "src": "6403:8:0", + "referencedDeclaration": 431, + "src": "6424:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -15217,22 +15121,22 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6397:15:0", + "src": "6418:15:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage", + "typeIdentifier": "t_struct$_Order_$831_storage", "typeString": "struct IGateway.Order storage ref" } }, - "id": 512, + "id": 509, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberLocation": "6413:5:0", + "memberLocation": "6434:5:0", "memberName": "token", "nodeType": "MemberAccess", - "referencedDeclaration": 817, - "src": "6397:21:0", + "referencedDeclaration": 814, + "src": "6418:21:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -15246,18 +15150,18 @@ "typeString": "address" } ], - "id": 508, + "id": 505, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2557, - "src": "6390:6:0", + "referencedDeclaration": 2554, + "src": "6411:6:0", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC20_$2557_$", + "typeIdentifier": "t_type$_t_contract$_IERC20_$2554_$", "typeString": "type(contract IERC20)" } }, - "id": 513, + "id": 510, "isConstant": false, "isLValue": false, "isPure": false, @@ -15266,29 +15170,29 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6390:29:0", + "src": "6411:29:0", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC20_$2557", + "typeIdentifier": "t_contract$_IERC20_$2554", "typeString": "contract IERC20" } }, - "id": 514, + "id": 511, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberLocation": "6420:8:0", + "memberLocation": "6441:8:0", "memberName": "transfer", "nodeType": "MemberAccess", - "referencedDeclaration": 2524, - "src": "6390:38:0", + "referencedDeclaration": 2521, + "src": "6411:38:0", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,uint256) external returns (bool)" } }, - "id": 525, + "id": 522, "isConstant": false, "isLValue": false, "isPure": false, @@ -15297,39 +15201,39 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6390:121:0", + "src": "6411:121:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 526, + "id": 523, "nodeType": "ExpressionStatement", - "src": "6390:121:0" + "src": "6411:121:0" }, { "eventCall": { "arguments": [ { - "id": 528, + "id": 525, "name": "_fee", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 432, - "src": "6560:4:0", + "referencedDeclaration": 429, + "src": "6581:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { - "id": 529, + "id": 526, "name": "_orderId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 434, - "src": "6566:8:0", + "referencedDeclaration": 431, + "src": "6587:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -15347,18 +15251,18 @@ "typeString": "bytes32" } ], - "id": 527, + "id": 524, "name": "OrderRefunded", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 806, - "src": "6546:13:0", + "referencedDeclaration": 803, + "src": "6567:13:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_uint256_$_t_bytes32_$returns$__$", "typeString": "function (uint256,bytes32)" } }, - "id": 530, + "id": 527, "isConstant": false, "isLValue": false, "isPure": false, @@ -15367,85 +15271,85 @@ "nameLocations": [], "names": [], "nodeType": "FunctionCall", - "src": "6546:29:0", + "src": "6567:29:0", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 531, + "id": 528, "nodeType": "EmitStatement", - "src": "6541:34:0" + "src": "6562:34:0" }, { "expression": { "hexValue": "74727565", - "id": 532, + "id": 529, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "6587:4:0", + "src": "6608:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "true" }, - "functionReturnParameters": 440, - "id": 533, + "functionReturnParameters": 437, + "id": 530, "nodeType": "Return", - "src": "6580:11:0" + "src": "6601:11:0" } ] }, "documentation": { - "id": 430, + "id": 427, "nodeType": "StructuredDocumentation", - "src": "5633:34:0", + "src": "5654:34:0", "text": "@dev See {refund-IGateway}. " }, "functionSelector": "71eedb88", - "id": 535, + "id": 532, "implemented": true, "kind": "function", "modifiers": [ { - "id": 437, + "id": 434, "kind": "modifierInvocation", "modifierName": { - "id": 436, + "id": 433, "name": "onlyAggregator", "nameLocations": [ - "5726:14:0" + "5747:14:0" ], "nodeType": "IdentifierPath", "referencedDeclaration": 70, - "src": "5726:14:0" + "src": "5747:14:0" }, "nodeType": "ModifierInvocation", - "src": "5726:14:0" + "src": "5747:14:0" } ], "name": "refund", - "nameLocation": "5678:6:0", + "nameLocation": "5699:6:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 435, + "id": 432, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 432, + "id": 429, "mutability": "mutable", "name": "_fee", - "nameLocation": "5693:4:0", + "nameLocation": "5714:4:0", "nodeType": "VariableDeclaration", - "scope": 535, - "src": "5685:12:0", + "scope": 532, + "src": "5706:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15453,10 +15357,10 @@ "typeString": "uint256" }, "typeName": { - "id": 431, + "id": 428, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5685:7:0", + "src": "5706:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15466,13 +15370,13 @@ }, { "constant": false, - "id": 434, + "id": 431, "mutability": "mutable", "name": "_orderId", - "nameLocation": "5707:8:0", + "nameLocation": "5728:8:0", "nodeType": "VariableDeclaration", - "scope": 535, - "src": "5699:16:0", + "scope": 532, + "src": "5720:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15480,10 +15384,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 433, + "id": 430, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "5699:7:0", + "src": "5720:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -15492,21 +15396,21 @@ "visibility": "internal" } ], - "src": "5684:32:0" + "src": "5705:32:0" }, "returnParameters": { - "id": 440, + "id": 437, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 439, + "id": 436, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 535, - "src": "5750:4:0", + "scope": 532, + "src": "5771:4:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15514,10 +15418,10 @@ "typeString": "bool" }, "typeName": { - "id": 438, + "id": 435, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "5750:4:0", + "src": "5771:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -15526,45 +15430,45 @@ "visibility": "internal" } ], - "src": "5749:6:0" + "src": "5770:6:0" }, - "scope": 582, - "src": "5669:926:0", + "scope": 579, + "src": "5690:926:0", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { "baseFunctions": [ - 895 + 892 ], "body": { - "id": 548, + "id": 545, "nodeType": "Block", - "src": "6905:30:0", + "src": "6926:30:0", "statements": [ { "expression": { "baseExpression": { - "id": 544, + "id": 541, "name": "order", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 24, - "src": "6916:5:0", + "src": "6937:5:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$834_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Order_$831_storage_$", "typeString": "mapping(bytes32 => struct IGateway.Order storage ref)" } }, - "id": 546, + "id": 543, "indexExpression": { - "id": 545, + "id": 542, "name": "_orderId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 538, - "src": "6922:8:0", + "referencedDeclaration": 535, + "src": "6943:8:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -15575,46 +15479,46 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6916:15:0", + "src": "6937:15:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage", + "typeIdentifier": "t_struct$_Order_$831_storage", "typeString": "struct IGateway.Order storage ref" } }, - "functionReturnParameters": 543, - "id": 547, + "functionReturnParameters": 540, + "id": 544, "nodeType": "Return", - "src": "6909:22:0" + "src": "6930:22:0" } ] }, "documentation": { - "id": 536, + "id": 533, "nodeType": "StructuredDocumentation", - "src": "6786:40:0", + "src": "6807:40:0", "text": "@dev See {getOrderInfo-IGateway}. " }, "functionSelector": "768c6ec0", - "id": 549, + "id": 546, "implemented": true, "kind": "function", "modifiers": [], "name": "getOrderInfo", - "nameLocation": "6837:12:0", + "nameLocation": "6858:12:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 539, + "id": 536, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 538, + "id": 535, "mutability": "mutable", "name": "_orderId", - "nameLocation": "6858:8:0", + "nameLocation": "6879:8:0", "nodeType": "VariableDeclaration", - "scope": 549, - "src": "6850:16:0", + "scope": 546, + "src": "6871:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15622,10 +15526,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 537, + "id": 534, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "6850:7:0", + "src": "6871:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -15634,66 +15538,66 @@ "visibility": "internal" } ], - "src": "6849:18:0" + "src": "6870:18:0" }, "returnParameters": { - "id": 543, + "id": 540, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 542, + "id": 539, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 549, - "src": "6891:12:0", + "scope": 546, + "src": "6912:12:0", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_memory_ptr", + "typeIdentifier": "t_struct$_Order_$831_memory_ptr", "typeString": "struct IGateway.Order" }, "typeName": { - "id": 541, + "id": 538, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 540, + "id": 537, "name": "Order", "nameLocations": [ - "6891:5:0" + "6912:5:0" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 834, - "src": "6891:5:0" + "referencedDeclaration": 831, + "src": "6912:5:0" }, - "referencedDeclaration": 834, - "src": "6891:5:0", + "referencedDeclaration": 831, + "src": "6912:5:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage_ptr", + "typeIdentifier": "t_struct$_Order_$831_storage_ptr", "typeString": "struct IGateway.Order" } }, "visibility": "internal" } ], - "src": "6890:14:0" + "src": "6911:14:0" }, - "scope": 582, - "src": "6828:107:0", + "scope": 579, + "src": "6849:107:0", "stateMutability": "view", "virtual": false, "visibility": "external" }, { "baseFunctions": [ - 886 + 883 ], "body": { - "id": 567, + "id": 564, "nodeType": "Block", - "src": "7055:71:0", + "src": "7076:71:0", "statements": [ { "condition": { @@ -15701,32 +15605,32 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 561, + "id": 558, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "baseExpression": { - "id": 557, + "id": 554, "name": "_isTokenSupported", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 599, - "src": "7063:17:0", + "referencedDeclaration": 596, + "src": "7084:17:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 559, + "id": 556, "indexExpression": { - "id": 558, + "id": 555, "name": "_token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 552, - "src": "7081:6:0", + "referencedDeclaration": 549, + "src": "7102:6:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -15737,7 +15641,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7063:25:0", + "src": "7084:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15747,103 +15651,103 @@ "operator": "==", "rightExpression": { "hexValue": "31", - "id": 560, + "id": 557, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "7092:1:0", + "src": "7113:1:0", "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", "typeString": "int_const 1" }, "value": "1" }, - "src": "7063:30:0", + "src": "7084:30:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 564, + "id": 561, "nodeType": "IfStatement", - "src": "7059:47:0", + "src": "7080:47:0", "trueBody": { "expression": { "hexValue": "74727565", - "id": 562, + "id": 559, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "7102:4:0", + "src": "7123:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "true" }, - "functionReturnParameters": 556, - "id": 563, + "functionReturnParameters": 553, + "id": 560, "nodeType": "Return", - "src": "7095:11:0" + "src": "7116:11:0" } }, { "expression": { "hexValue": "66616c7365", - "id": 565, + "id": 562, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "7117:5:0", + "src": "7138:5:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "false" }, - "functionReturnParameters": 556, - "id": 566, + "functionReturnParameters": 553, + "id": 563, "nodeType": "Return", - "src": "7110:12:0" + "src": "7131:12:0" } ] }, "documentation": { - "id": 550, + "id": 547, "nodeType": "StructuredDocumentation", - "src": "6938:44:0", + "src": "6959:44:0", "text": "@dev See {isTokenSupported-IGateway}. " }, "functionSelector": "75151b63", - "id": 568, + "id": 565, "implemented": true, "kind": "function", "modifiers": [], "name": "isTokenSupported", - "nameLocation": "6993:16:0", + "nameLocation": "7014:16:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 553, + "id": 550, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 552, + "id": 549, "mutability": "mutable", "name": "_token", - "nameLocation": "7018:6:0", + "nameLocation": "7039:6:0", "nodeType": "VariableDeclaration", - "scope": 568, - "src": "7010:14:0", + "scope": 565, + "src": "7031:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15851,10 +15755,10 @@ "typeString": "address" }, "typeName": { - "id": 551, + "id": 548, "name": "address", "nodeType": "ElementaryTypeName", - "src": "7010:7:0", + "src": "7031:7:0", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -15864,21 +15768,21 @@ "visibility": "internal" } ], - "src": "7009:16:0" + "src": "7030:16:0" }, "returnParameters": { - "id": 556, + "id": 553, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 555, + "id": 552, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 568, - "src": "7049:4:0", + "scope": 565, + "src": "7070:4:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15886,10 +15790,10 @@ "typeString": "bool" }, "typeName": { - "id": 554, + "id": 551, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "7049:4:0", + "src": "7070:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -15898,104 +15802,104 @@ "visibility": "internal" } ], - "src": "7048:6:0" + "src": "7069:6:0" }, - "scope": 582, - "src": "6984:142:0", + "scope": 579, + "src": "7005:142:0", "stateMutability": "view", "virtual": false, "visibility": "external" }, { "baseFunctions": [ - 903 + 900 ], "body": { - "id": 580, + "id": 577, "nodeType": "Block", - "src": "7237:44:0", + "src": "7258:44:0", "statements": [ { "expression": { "components": [ { - "id": 576, + "id": 573, "name": "protocolFeePercent", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 591, - "src": "7249:18:0", + "referencedDeclaration": 588, + "src": "7270:18:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" } }, { - "id": 577, + "id": 574, "name": "MAX_BPS", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 589, - "src": "7269:7:0", + "referencedDeclaration": 586, + "src": "7290:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 578, + "id": 575, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "7248:29:0", + "src": "7269:29:0", "typeDescriptions": { "typeIdentifier": "t_tuple$_t_uint64_$_t_uint256_$", "typeString": "tuple(uint64,uint256)" } }, - "functionReturnParameters": 575, - "id": 579, + "functionReturnParameters": 572, + "id": 576, "nodeType": "Return", - "src": "7241:36:0" + "src": "7262:36:0" } ] }, "documentation": { - "id": 569, + "id": 566, "nodeType": "StructuredDocumentation", - "src": "7129:41:0", + "src": "7150:41:0", "text": "@dev See {getFeeDetails-IGateway}. " }, "functionSelector": "b810c636", - "id": 581, + "id": 578, "implemented": true, "kind": "function", "modifiers": [], "name": "getFeeDetails", - "nameLocation": "7181:13:0", + "nameLocation": "7202:13:0", "nodeType": "FunctionDefinition", "parameters": { - "id": 570, + "id": 567, "nodeType": "ParameterList", "parameters": [], - "src": "7194:2:0" + "src": "7215:2:0" }, "returnParameters": { - "id": 575, + "id": 572, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 572, + "id": 569, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 581, - "src": "7220:6:0", + "scope": 578, + "src": "7241:6:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16003,10 +15907,10 @@ "typeString": "uint64" }, "typeName": { - "id": 571, + "id": 568, "name": "uint64", "nodeType": "ElementaryTypeName", - "src": "7220:6:0", + "src": "7241:6:0", "typeDescriptions": { "typeIdentifier": "t_uint64", "typeString": "uint64" @@ -16016,13 +15920,13 @@ }, { "constant": false, - "id": 574, + "id": 571, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 581, - "src": "7228:7:0", + "scope": 578, + "src": "7249:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16030,10 +15934,10 @@ "typeString": "uint256" }, "typeName": { - "id": 573, + "id": 570, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "7228:7:0", + "src": "7249:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16042,21 +15946,21 @@ "visibility": "internal" } ], - "src": "7219:17:0" + "src": "7240:17:0" }, - "scope": 582, - "src": "7172:109:0", + "scope": 579, + "src": "7193:109:0", "stateMutability": "view", "virtual": false, "visibility": "external" } ], - "scope": 583, - "src": "390:6893:0", + "scope": 580, + "src": "390:6914:0", "usedErrors": [] } ], - "src": "39:7245:0" + "src": "39:7266:0" }, "compiler": { "name": "solc", @@ -16064,5 +15968,5 @@ }, "networks": {}, "schemaVersion": "2.0.1", - "updatedAt": "2024-06-20T09:33:52.564Z" + "updatedAt": "2024-06-27T12:24:25.265Z" } \ No newline at end of file diff --git a/build/contracts/GatewaySettingManager.json b/build/contracts/GatewaySettingManager.json index 435f7b3..88c6b01 100644 --- a/build/contracts/GatewaySettingManager.json +++ b/build/contracts/GatewaySettingManager.json @@ -230,37 +230,37 @@ "type": "function" } ], - "bytecode": "0x608060405234801561001057600080fd5b50d3801561001d57600080fd5b50d2801561002a57600080fd5b50610f258061003a6000396000f3fe608060405234801561001057600080fd5b50d3801561001d57600080fd5b50d2801561002a57600080fd5b50600436106100a25760003560e01c80638da5cb5b116100755780638da5cb5b146100f3578063cd99240014610111578063e30c39781461012d578063f2fde38b1461014b576100a2565b806340ebc677146100a757806347094e2e146100c3578063715018a6146100df57806379ba5097146100e9575b600080fd5b6100c160048036038101906100bc9190610a03565b610167565b005b6100dd60048036038101906100d89190610a83565b61042f565b005b6100e761049a565b005b6100f16104ae565b005b6100fb61053b565b6040516101089190610abf565b60405180910390f35b61012b60048036038101906101269190610b10565b610565565b005b6101356106ea565b6040516101429190610abf565b60405180910390f35b61016560048036038101906101609190610b63565b610714565b005b61016f6107c1565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036101de576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016101d590610bed565b60405180910390fd5b60007f747265617375727900000000000000000000000000000000000000000000000083036102e1578173ffffffffffffffffffffffffffffffffffffffff16609860089054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1603610297576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161028e90610c7f565b60405180910390fd5b81609860086101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600190506103df565b7f61676772656761746f720000000000000000000000000000000000000000000083036103de578173ffffffffffffffffffffffffffffffffffffffff16609960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1603610398576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161038f90610d11565b60405180910390fd5b81609960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600190505b5b801561042a578173ffffffffffffffffffffffffffffffffffffffff16837fbbc5b96e57cfecb3dbeeadf92e87f15e58e64fcd75cbe256dcc5d9ef2e51e8a460405160405180910390a35b505050565b6104376107c1565b80609860006101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055507f1ce29a697a4765bd17d91df93ba75b250b629ecf030553ff1f6ab59f15ae6c7b8160405161048f9190610d40565b60405180910390a150565b6104a26107c1565b6104ac600061083f565b565b60006104b8610870565b90508073ffffffffffffffffffffffffffffffffffffffff166104d96106ea565b73ffffffffffffffffffffffffffffffffffffffff161461052f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161052690610dcd565b60405180910390fd5b6105388161083f565b50565b6000603360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b61056d6107c1565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036105dc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105d390610bed565b60405180910390fd5b60018114806105eb5750600281145b61062a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161062190610e39565b60405180910390fd5b7f746f6b656e00000000000000000000000000000000000000000000000000000083036106e55780609a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff16837fcfa976492af7c14a916cc3a239f4c9c75bbd7f5f0e398beb41d892c7eeccae4c836040516106dc9190610e68565b60405180910390a35b505050565b6000606560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b61071c6107c1565b80606560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff1661077c61053b565b73ffffffffffffffffffffffffffffffffffffffff167f38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e2270060405160405180910390a350565b6107c9610870565b73ffffffffffffffffffffffffffffffffffffffff166107e761053b565b73ffffffffffffffffffffffffffffffffffffffff161461083d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161083490610ecf565b60405180910390fd5b565b606560006101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905561086d81610878565b50565b600033905090565b6000603360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081603360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600080fd5b6000819050919050565b61095681610943565b811461096157600080fd5b50565b6000813590506109738161094d565b92915050565b600074ffffffffffffffffffffffffffffffffffffffffff82169050919050565b6109a381610979565b81146109ae57600080fd5b50565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006109dc826109b1565b9050919050565b6000813590506109f28161099a565b6109fb816109d1565b905092915050565b60008060408385031215610a1a57610a1961093e565b5b6000610a2885828601610964565b9250506020610a39858286016109e3565b9150509250929050565b600067ffffffffffffffff82169050919050565b610a6081610a43565b8114610a6b57600080fd5b50565b600081359050610a7d81610a57565b92915050565b600060208284031215610a9957610a9861093e565b5b6000610aa784828501610a6e565b91505092915050565b610ab9816109d1565b82525050565b6000602082019050610ad46000830184610ab0565b92915050565b6000819050919050565b610aed81610ada565b8114610af857600080fd5b50565b600081359050610b0a81610ae4565b92915050565b600080600060608486031215610b2957610b2861093e565b5b6000610b3786828701610964565b9350506020610b48868287016109e3565b9250506040610b5986828701610afb565b9150509250925092565b600060208284031215610b7957610b7861093e565b5b6000610b87848285016109e3565b91505092915050565b600082825260208201905092915050565b7f476174657761793a207a65726f20616464726573730000000000000000000000600082015250565b6000610bd7601583610b90565b9150610be282610ba1565b602082019050919050565b60006020820190508181036000830152610c0681610bca565b9050919050565b7f476174657761793a207472656173757279206164647265737320616c7265616460008201527f7920736574000000000000000000000000000000000000000000000000000000602082015250565b6000610c69602583610b90565b9150610c7482610c0d565b604082019050919050565b60006020820190508181036000830152610c9881610c5c565b9050919050565b7f476174657761793a2061676772656761746f72206164647265737320616c726560008201527f6164792073657400000000000000000000000000000000000000000000000000602082015250565b6000610cfb602783610b90565b9150610d0682610c9f565b604082019050919050565b60006020820190508181036000830152610d2a81610cee565b9050919050565b610d3a81610a43565b82525050565b6000602082019050610d556000830184610d31565b92915050565b7f4f776e61626c6532537465703a2063616c6c6572206973206e6f74207468652060008201527f6e6577206f776e65720000000000000000000000000000000000000000000000602082015250565b6000610db7602983610b90565b9150610dc282610d5b565b604082019050919050565b60006020820190508181036000830152610de681610daa565b9050919050565b7f476174657761793a20696e76616c696420737461747573000000000000000000600082015250565b6000610e23601783610b90565b9150610e2e82610ded565b602082019050919050565b60006020820190508181036000830152610e5281610e16565b9050919050565b610e6281610ada565b82525050565b6000602082019050610e7d6000830184610e59565b92915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000610eb9602083610b90565b9150610ec482610e83565b602082019050919050565b60006020820190508181036000830152610ee881610eac565b905091905056fea26474726f6e58221220f93d1164af82e7f8e118a8f4bbd75e9722a5d34215580245af85928fdbfa715264736f6c63430008120033", - "deployedBytecode": "0x608060405234801561001057600080fd5b50d3801561001d57600080fd5b50d2801561002a57600080fd5b50600436106100a25760003560e01c80638da5cb5b116100755780638da5cb5b146100f3578063cd99240014610111578063e30c39781461012d578063f2fde38b1461014b576100a2565b806340ebc677146100a757806347094e2e146100c3578063715018a6146100df57806379ba5097146100e9575b600080fd5b6100c160048036038101906100bc9190610a03565b610167565b005b6100dd60048036038101906100d89190610a83565b61042f565b005b6100e761049a565b005b6100f16104ae565b005b6100fb61053b565b6040516101089190610abf565b60405180910390f35b61012b60048036038101906101269190610b10565b610565565b005b6101356106ea565b6040516101429190610abf565b60405180910390f35b61016560048036038101906101609190610b63565b610714565b005b61016f6107c1565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036101de576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016101d590610bed565b60405180910390fd5b60007f747265617375727900000000000000000000000000000000000000000000000083036102e1578173ffffffffffffffffffffffffffffffffffffffff16609860089054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1603610297576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161028e90610c7f565b60405180910390fd5b81609860086101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600190506103df565b7f61676772656761746f720000000000000000000000000000000000000000000083036103de578173ffffffffffffffffffffffffffffffffffffffff16609960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1603610398576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161038f90610d11565b60405180910390fd5b81609960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600190505b5b801561042a578173ffffffffffffffffffffffffffffffffffffffff16837fbbc5b96e57cfecb3dbeeadf92e87f15e58e64fcd75cbe256dcc5d9ef2e51e8a460405160405180910390a35b505050565b6104376107c1565b80609860006101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055507f1ce29a697a4765bd17d91df93ba75b250b629ecf030553ff1f6ab59f15ae6c7b8160405161048f9190610d40565b60405180910390a150565b6104a26107c1565b6104ac600061083f565b565b60006104b8610870565b90508073ffffffffffffffffffffffffffffffffffffffff166104d96106ea565b73ffffffffffffffffffffffffffffffffffffffff161461052f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161052690610dcd565b60405180910390fd5b6105388161083f565b50565b6000603360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b61056d6107c1565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036105dc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105d390610bed565b60405180910390fd5b60018114806105eb5750600281145b61062a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161062190610e39565b60405180910390fd5b7f746f6b656e00000000000000000000000000000000000000000000000000000083036106e55780609a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff16837fcfa976492af7c14a916cc3a239f4c9c75bbd7f5f0e398beb41d892c7eeccae4c836040516106dc9190610e68565b60405180910390a35b505050565b6000606560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b61071c6107c1565b80606560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff1661077c61053b565b73ffffffffffffffffffffffffffffffffffffffff167f38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e2270060405160405180910390a350565b6107c9610870565b73ffffffffffffffffffffffffffffffffffffffff166107e761053b565b73ffffffffffffffffffffffffffffffffffffffff161461083d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161083490610ecf565b60405180910390fd5b565b606560006101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905561086d81610878565b50565b600033905090565b6000603360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081603360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600080fd5b6000819050919050565b61095681610943565b811461096157600080fd5b50565b6000813590506109738161094d565b92915050565b600074ffffffffffffffffffffffffffffffffffffffffff82169050919050565b6109a381610979565b81146109ae57600080fd5b50565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006109dc826109b1565b9050919050565b6000813590506109f28161099a565b6109fb816109d1565b905092915050565b60008060408385031215610a1a57610a1961093e565b5b6000610a2885828601610964565b9250506020610a39858286016109e3565b9150509250929050565b600067ffffffffffffffff82169050919050565b610a6081610a43565b8114610a6b57600080fd5b50565b600081359050610a7d81610a57565b92915050565b600060208284031215610a9957610a9861093e565b5b6000610aa784828501610a6e565b91505092915050565b610ab9816109d1565b82525050565b6000602082019050610ad46000830184610ab0565b92915050565b6000819050919050565b610aed81610ada565b8114610af857600080fd5b50565b600081359050610b0a81610ae4565b92915050565b600080600060608486031215610b2957610b2861093e565b5b6000610b3786828701610964565b9350506020610b48868287016109e3565b9250506040610b5986828701610afb565b9150509250925092565b600060208284031215610b7957610b7861093e565b5b6000610b87848285016109e3565b91505092915050565b600082825260208201905092915050565b7f476174657761793a207a65726f20616464726573730000000000000000000000600082015250565b6000610bd7601583610b90565b9150610be282610ba1565b602082019050919050565b60006020820190508181036000830152610c0681610bca565b9050919050565b7f476174657761793a207472656173757279206164647265737320616c7265616460008201527f7920736574000000000000000000000000000000000000000000000000000000602082015250565b6000610c69602583610b90565b9150610c7482610c0d565b604082019050919050565b60006020820190508181036000830152610c9881610c5c565b9050919050565b7f476174657761793a2061676772656761746f72206164647265737320616c726560008201527f6164792073657400000000000000000000000000000000000000000000000000602082015250565b6000610cfb602783610b90565b9150610d0682610c9f565b604082019050919050565b60006020820190508181036000830152610d2a81610cee565b9050919050565b610d3a81610a43565b82525050565b6000602082019050610d556000830184610d31565b92915050565b7f4f776e61626c6532537465703a2063616c6c6572206973206e6f74207468652060008201527f6e6577206f776e65720000000000000000000000000000000000000000000000602082015250565b6000610db7602983610b90565b9150610dc282610d5b565b604082019050919050565b60006020820190508181036000830152610de681610daa565b9050919050565b7f476174657761793a20696e76616c696420737461747573000000000000000000600082015250565b6000610e23601783610b90565b9150610e2e82610ded565b602082019050919050565b60006020820190508181036000830152610e5281610e16565b9050919050565b610e6281610ada565b82525050565b6000602082019050610e7d6000830184610e59565b92915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000610eb9602083610b90565b9150610ec482610e83565b602082019050919050565b60006020820190508181036000830152610ee881610eac565b905091905056fea26474726f6e58221220f93d1164af82e7f8e118a8f4bbd75e9722a5d34215580245af85928fdbfa715264736f6c63430008120033", + "bytecode": "0x608060405234801561001057600080fd5b50d3801561001d57600080fd5b50d2801561002a57600080fd5b50610f258061003a6000396000f3fe608060405234801561001057600080fd5b50d3801561001d57600080fd5b50d2801561002a57600080fd5b50600436106100a25760003560e01c80638da5cb5b116100755780638da5cb5b146100f3578063cd99240014610111578063e30c39781461012d578063f2fde38b1461014b576100a2565b806340ebc677146100a757806347094e2e146100c3578063715018a6146100df57806379ba5097146100e9575b600080fd5b6100c160048036038101906100bc9190610a03565b610167565b005b6100dd60048036038101906100d89190610a83565b61042f565b005b6100e761049a565b005b6100f16104ae565b005b6100fb61053b565b6040516101089190610abf565b60405180910390f35b61012b60048036038101906101269190610b10565b610565565b005b6101356106ea565b6040516101429190610abf565b60405180910390f35b61016560048036038101906101609190610b63565b610714565b005b61016f6107c1565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036101de576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016101d590610bed565b60405180910390fd5b60007f747265617375727900000000000000000000000000000000000000000000000083036102e1578173ffffffffffffffffffffffffffffffffffffffff16609860089054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1603610297576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161028e90610c7f565b60405180910390fd5b81609860086101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600190506103df565b7f61676772656761746f720000000000000000000000000000000000000000000083036103de578173ffffffffffffffffffffffffffffffffffffffff16609960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1603610398576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161038f90610d11565b60405180910390fd5b81609960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600190505b5b801561042a578173ffffffffffffffffffffffffffffffffffffffff16837fbbc5b96e57cfecb3dbeeadf92e87f15e58e64fcd75cbe256dcc5d9ef2e51e8a460405160405180910390a35b505050565b6104376107c1565b80609860006101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055507f1ce29a697a4765bd17d91df93ba75b250b629ecf030553ff1f6ab59f15ae6c7b8160405161048f9190610d40565b60405180910390a150565b6104a26107c1565b6104ac600061083f565b565b60006104b8610870565b90508073ffffffffffffffffffffffffffffffffffffffff166104d96106ea565b73ffffffffffffffffffffffffffffffffffffffff161461052f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161052690610dcd565b60405180910390fd5b6105388161083f565b50565b6000603360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b61056d6107c1565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036105dc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105d390610bed565b60405180910390fd5b60018114806105eb5750600281145b61062a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161062190610e39565b60405180910390fd5b7f746f6b656e00000000000000000000000000000000000000000000000000000083036106e55780609a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff16837fcfa976492af7c14a916cc3a239f4c9c75bbd7f5f0e398beb41d892c7eeccae4c836040516106dc9190610e68565b60405180910390a35b505050565b6000606560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b61071c6107c1565b80606560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff1661077c61053b565b73ffffffffffffffffffffffffffffffffffffffff167f38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e2270060405160405180910390a350565b6107c9610870565b73ffffffffffffffffffffffffffffffffffffffff166107e761053b565b73ffffffffffffffffffffffffffffffffffffffff161461083d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161083490610ecf565b60405180910390fd5b565b606560006101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905561086d81610878565b50565b600033905090565b6000603360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081603360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600080fd5b6000819050919050565b61095681610943565b811461096157600080fd5b50565b6000813590506109738161094d565b92915050565b600074ffffffffffffffffffffffffffffffffffffffffff82169050919050565b6109a381610979565b81146109ae57600080fd5b50565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006109dc826109b1565b9050919050565b6000813590506109f28161099a565b6109fb816109d1565b905092915050565b60008060408385031215610a1a57610a1961093e565b5b6000610a2885828601610964565b9250506020610a39858286016109e3565b9150509250929050565b600067ffffffffffffffff82169050919050565b610a6081610a43565b8114610a6b57600080fd5b50565b600081359050610a7d81610a57565b92915050565b600060208284031215610a9957610a9861093e565b5b6000610aa784828501610a6e565b91505092915050565b610ab9816109d1565b82525050565b6000602082019050610ad46000830184610ab0565b92915050565b6000819050919050565b610aed81610ada565b8114610af857600080fd5b50565b600081359050610b0a81610ae4565b92915050565b600080600060608486031215610b2957610b2861093e565b5b6000610b3786828701610964565b9350506020610b48868287016109e3565b9250506040610b5986828701610afb565b9150509250925092565b600060208284031215610b7957610b7861093e565b5b6000610b87848285016109e3565b91505092915050565b600082825260208201905092915050565b7f476174657761793a207a65726f20616464726573730000000000000000000000600082015250565b6000610bd7601583610b90565b9150610be282610ba1565b602082019050919050565b60006020820190508181036000830152610c0681610bca565b9050919050565b7f476174657761793a207472656173757279206164647265737320616c7265616460008201527f7920736574000000000000000000000000000000000000000000000000000000602082015250565b6000610c69602583610b90565b9150610c7482610c0d565b604082019050919050565b60006020820190508181036000830152610c9881610c5c565b9050919050565b7f476174657761793a2061676772656761746f72206164647265737320616c726560008201527f6164792073657400000000000000000000000000000000000000000000000000602082015250565b6000610cfb602783610b90565b9150610d0682610c9f565b604082019050919050565b60006020820190508181036000830152610d2a81610cee565b9050919050565b610d3a81610a43565b82525050565b6000602082019050610d556000830184610d31565b92915050565b7f4f776e61626c6532537465703a2063616c6c6572206973206e6f74207468652060008201527f6e6577206f776e65720000000000000000000000000000000000000000000000602082015250565b6000610db7602983610b90565b9150610dc282610d5b565b604082019050919050565b60006020820190508181036000830152610de681610daa565b9050919050565b7f476174657761793a20696e76616c696420737461747573000000000000000000600082015250565b6000610e23601783610b90565b9150610e2e82610ded565b602082019050919050565b60006020820190508181036000830152610e5281610e16565b9050919050565b610e6281610ada565b82525050565b6000602082019050610e7d6000830184610e59565b92915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000610eb9602083610b90565b9150610ec482610e83565b602082019050919050565b60006020820190508181036000830152610ee881610eac565b905091905056fea26474726f6e5822122084585c73b69ab002121d8f9d4e059d774f68857675dcea5e9a31e9954eff8ac964736f6c63430008120033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50d3801561001d57600080fd5b50d2801561002a57600080fd5b50600436106100a25760003560e01c80638da5cb5b116100755780638da5cb5b146100f3578063cd99240014610111578063e30c39781461012d578063f2fde38b1461014b576100a2565b806340ebc677146100a757806347094e2e146100c3578063715018a6146100df57806379ba5097146100e9575b600080fd5b6100c160048036038101906100bc9190610a03565b610167565b005b6100dd60048036038101906100d89190610a83565b61042f565b005b6100e761049a565b005b6100f16104ae565b005b6100fb61053b565b6040516101089190610abf565b60405180910390f35b61012b60048036038101906101269190610b10565b610565565b005b6101356106ea565b6040516101429190610abf565b60405180910390f35b61016560048036038101906101609190610b63565b610714565b005b61016f6107c1565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036101de576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016101d590610bed565b60405180910390fd5b60007f747265617375727900000000000000000000000000000000000000000000000083036102e1578173ffffffffffffffffffffffffffffffffffffffff16609860089054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1603610297576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161028e90610c7f565b60405180910390fd5b81609860086101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600190506103df565b7f61676772656761746f720000000000000000000000000000000000000000000083036103de578173ffffffffffffffffffffffffffffffffffffffff16609960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1603610398576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161038f90610d11565b60405180910390fd5b81609960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600190505b5b801561042a578173ffffffffffffffffffffffffffffffffffffffff16837fbbc5b96e57cfecb3dbeeadf92e87f15e58e64fcd75cbe256dcc5d9ef2e51e8a460405160405180910390a35b505050565b6104376107c1565b80609860006101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055507f1ce29a697a4765bd17d91df93ba75b250b629ecf030553ff1f6ab59f15ae6c7b8160405161048f9190610d40565b60405180910390a150565b6104a26107c1565b6104ac600061083f565b565b60006104b8610870565b90508073ffffffffffffffffffffffffffffffffffffffff166104d96106ea565b73ffffffffffffffffffffffffffffffffffffffff161461052f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161052690610dcd565b60405180910390fd5b6105388161083f565b50565b6000603360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b61056d6107c1565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036105dc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105d390610bed565b60405180910390fd5b60018114806105eb5750600281145b61062a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161062190610e39565b60405180910390fd5b7f746f6b656e00000000000000000000000000000000000000000000000000000083036106e55780609a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff16837fcfa976492af7c14a916cc3a239f4c9c75bbd7f5f0e398beb41d892c7eeccae4c836040516106dc9190610e68565b60405180910390a35b505050565b6000606560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b61071c6107c1565b80606560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff1661077c61053b565b73ffffffffffffffffffffffffffffffffffffffff167f38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e2270060405160405180910390a350565b6107c9610870565b73ffffffffffffffffffffffffffffffffffffffff166107e761053b565b73ffffffffffffffffffffffffffffffffffffffff161461083d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161083490610ecf565b60405180910390fd5b565b606560006101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905561086d81610878565b50565b600033905090565b6000603360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081603360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600080fd5b6000819050919050565b61095681610943565b811461096157600080fd5b50565b6000813590506109738161094d565b92915050565b600074ffffffffffffffffffffffffffffffffffffffffff82169050919050565b6109a381610979565b81146109ae57600080fd5b50565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006109dc826109b1565b9050919050565b6000813590506109f28161099a565b6109fb816109d1565b905092915050565b60008060408385031215610a1a57610a1961093e565b5b6000610a2885828601610964565b9250506020610a39858286016109e3565b9150509250929050565b600067ffffffffffffffff82169050919050565b610a6081610a43565b8114610a6b57600080fd5b50565b600081359050610a7d81610a57565b92915050565b600060208284031215610a9957610a9861093e565b5b6000610aa784828501610a6e565b91505092915050565b610ab9816109d1565b82525050565b6000602082019050610ad46000830184610ab0565b92915050565b6000819050919050565b610aed81610ada565b8114610af857600080fd5b50565b600081359050610b0a81610ae4565b92915050565b600080600060608486031215610b2957610b2861093e565b5b6000610b3786828701610964565b9350506020610b48868287016109e3565b9250506040610b5986828701610afb565b9150509250925092565b600060208284031215610b7957610b7861093e565b5b6000610b87848285016109e3565b91505092915050565b600082825260208201905092915050565b7f476174657761793a207a65726f20616464726573730000000000000000000000600082015250565b6000610bd7601583610b90565b9150610be282610ba1565b602082019050919050565b60006020820190508181036000830152610c0681610bca565b9050919050565b7f476174657761793a207472656173757279206164647265737320616c7265616460008201527f7920736574000000000000000000000000000000000000000000000000000000602082015250565b6000610c69602583610b90565b9150610c7482610c0d565b604082019050919050565b60006020820190508181036000830152610c9881610c5c565b9050919050565b7f476174657761793a2061676772656761746f72206164647265737320616c726560008201527f6164792073657400000000000000000000000000000000000000000000000000602082015250565b6000610cfb602783610b90565b9150610d0682610c9f565b604082019050919050565b60006020820190508181036000830152610d2a81610cee565b9050919050565b610d3a81610a43565b82525050565b6000602082019050610d556000830184610d31565b92915050565b7f4f776e61626c6532537465703a2063616c6c6572206973206e6f74207468652060008201527f6e6577206f776e65720000000000000000000000000000000000000000000000602082015250565b6000610db7602983610b90565b9150610dc282610d5b565b604082019050919050565b60006020820190508181036000830152610de681610daa565b9050919050565b7f476174657761793a20696e76616c696420737461747573000000000000000000600082015250565b6000610e23601783610b90565b9150610e2e82610ded565b602082019050919050565b60006020820190508181036000830152610e5281610e16565b9050919050565b610e6281610ada565b82525050565b6000602082019050610e7d6000830184610e59565b92915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000610eb9602083610b90565b9150610ec482610e83565b602082019050919050565b60006020820190508181036000830152610ee881610eac565b905091905056fea26474726f6e5822122084585c73b69ab002121d8f9d4e059d774f68857675dcea5e9a31e9954eff8ac964736f6c63430008120033", "sourceMap": "276:2570:1:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", "deployedSourceMap": "276:2570:1:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2293:551;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1894:170;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2085:101:5;;;:::i;:::-;;2031:212:4;;;:::i;:::-;;1462:85:5;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1426:335:1;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1144:99:4;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1436:178;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2293:551:1;1355:13:5;:11;:13::i;:::-;2401:1:1::1;2384:19;;:5;:19;;::::0;2376:53:::1;;;;;;;;;;;;:::i;:::-;;;;;;;;;2433:12;2453:18;:4;:18:::0;2449:326:::1;;2505:5;2486:24;;:15;;;;;;;;;;;:24;;::::0;2478:74:::1;;;;;;;;;;;;:::i;:::-;;;;;;;;;2575:5;2557:15;;:23;;;;;;;;;;;;;;;;;;2595:4;2585:14;;2449:326;;;2614:20;:4;:20:::0;2610:165:::1;;2671:5;2649:27;;:18;;;;;;;;;;;:27;;::::0;2641:79:::1;;;;;;;;;;;;:::i;:::-;;;;;;;;;2746:5;2725:18;;:26;;;;;;;;;;;;;;;;;;2766:4;2756:14;;2610:165;2449:326;2782:7;2778:63;;;2830:5;2801:35;;2824:4;2801:35;;;;;;;;;;2778:63;2372:472;2293:551:::0;;:::o;1894:170::-;1355:13:5;:11;:13::i;:::-;1993:19:1::1;1972:18;;:40;;;;;;;;;;;;;;;;;;2021:39;2040:19;2021:39;;;;;;:::i;:::-;;;;;;;;1894:170:::0;:::o;2085:101:5:-;1355:13;:11;:13::i;:::-;2149:30:::1;2176:1;2149:18;:30::i;:::-;2085:101::o:0;2031:212:4:-;2083:14;2100:12;:10;:12::i;:::-;2083:29;;2148:6;2130:24;;:14;:12;:14::i;:::-;:24;;;2122:78;;;;;;;;;;;;:::i;:::-;;;;;;;;;2210:26;2229:6;2210:18;:26::i;:::-;2073:170;2031:212::o;1462:85:5:-;1508:7;1534:6;;;;;;;;;;;1527:13;;1462:85;:::o;1426:335:1:-;1355:13:5;:11;:13::i;:::-;1547:1:1::1;1530:19;;:5;:19;;::::0;1522:53:::1;;;;;;;;;;;;:::i;:::-;;;;;;;;;1597:1;1587:6;:11;:26;;;;1612:1;1602:6;:11;1587:26;1579:62;;;;;;;;;;;;:::i;:::-;;;;;;;;;1649:15;:4;:15:::0;1645:113:::1;;1698:6;1671:17;:24;1689:5;1671:24;;;;;;;;;;;;;;;:33;;;;1739:5;1714:39;;1733:4;1714:39;1746:6;1714:39;;;;;;:::i;:::-;;;;;;;;1645:113;1426:335:::0;;;:::o;1144:99:4:-;1197:7;1223:13;;;;;;;;;;;1216:20;;1144:99;:::o;1436:178::-;1355:13:5;:11;:13::i;:::-;1541:8:4::1;1525:13;;:24;;;;;;;;;;;;;;;;;;1598:8;1564:43;;1589:7;:5;:7::i;:::-;1564:43;;;;;;;;;;;;1436:178:::0;:::o;1620:130:5:-;1694:12;:10;:12::i;:::-;1683:23;;:7;:5;:7::i;:::-;:23;;;1675:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;1620:130::o;1798:153:4:-;1887:13;;1880:20;;;;;;;;;;;1910:34;1935:8;1910:24;:34::i;:::-;1798:153;:::o;886:96:9:-;939:7;965:10;958:17;;886:96;:::o;2687:187:5:-;2760:16;2779:6;;;;;;;;;;;2760:25;;2804:8;2795:6;;:17;;;;;;;;;;;;;;;;;;2858:8;2827:40;;2848:8;2827:40;;;;;;;;;;;;2750:124;2687:187;:::o;88:117:14:-;197:1;194;187:12;334:77;371:7;400:5;389:16;;334:77;;;:::o;417:122::-;490:24;508:5;490:24;:::i;:::-;483:5;480:35;470:63;;529:1;526;519:12;470:63;417:122;:::o;545:139::-;591:5;629:6;616:20;607:29;;645:33;672:5;645:33;:::i;:::-;545:139;;;;:::o;690:128::-;727:7;767:44;760:5;756:56;745:67;;690:128;;;:::o;824:122::-;897:24;915:5;897:24;:::i;:::-;890:5;887:35;877:63;;936:1;933;926:12;877:63;824:122;:::o;952:126::-;989:7;1029:42;1022:5;1018:54;1007:65;;952:126;;;:::o;1084:96::-;1121:7;1150:24;1168:5;1150:24;:::i;:::-;1139:35;;1084:96;;;:::o;1186:181::-;1232:5;1270:6;1257:20;1248:29;;1286:33;1313:5;1286:33;:::i;:::-;1337:24;1355:5;1337:24;:::i;:::-;1328:33;;1186:181;;;;:::o;1373:474::-;1441:6;1449;1498:2;1486:9;1477:7;1473:23;1469:32;1466:119;;;1504:79;;:::i;:::-;1466:119;1624:1;1649:53;1694:7;1685:6;1674:9;1670:22;1649:53;:::i;:::-;1639:63;;1595:117;1751:2;1777:53;1822:7;1813:6;1802:9;1798:22;1777:53;:::i;:::-;1767:63;;1722:118;1373:474;;;;;:::o;1853:101::-;1889:7;1929:18;1922:5;1918:30;1907:41;;1853:101;;;:::o;1960:120::-;2032:23;2049:5;2032:23;:::i;:::-;2025:5;2022:34;2012:62;;2070:1;2067;2060:12;2012:62;1960:120;:::o;2086:137::-;2131:5;2169:6;2156:20;2147:29;;2185:32;2211:5;2185:32;:::i;:::-;2086:137;;;;:::o;2229:327::-;2287:6;2336:2;2324:9;2315:7;2311:23;2307:32;2304:119;;;2342:79;;:::i;:::-;2304:119;2462:1;2487:52;2531:7;2522:6;2511:9;2507:22;2487:52;:::i;:::-;2477:62;;2433:116;2229:327;;;;:::o;2562:118::-;2649:24;2667:5;2649:24;:::i;:::-;2644:3;2637:37;2562:118;;:::o;2686:222::-;2779:4;2817:2;2806:9;2802:18;2794:26;;2830:71;2898:1;2887:9;2883:17;2874:6;2830:71;:::i;:::-;2686:222;;;;:::o;2914:77::-;2951:7;2980:5;2969:16;;2914:77;;;:::o;2997:122::-;3070:24;3088:5;3070:24;:::i;:::-;3063:5;3060:35;3050:63;;3109:1;3106;3099:12;3050:63;2997:122;:::o;3125:139::-;3171:5;3209:6;3196:20;3187:29;;3225:33;3252:5;3225:33;:::i;:::-;3125:139;;;;:::o;3270:619::-;3347:6;3355;3363;3412:2;3400:9;3391:7;3387:23;3383:32;3380:119;;;3418:79;;:::i;:::-;3380:119;3538:1;3563:53;3608:7;3599:6;3588:9;3584:22;3563:53;:::i;:::-;3553:63;;3509:117;3665:2;3691:53;3736:7;3727:6;3716:9;3712:22;3691:53;:::i;:::-;3681:63;;3636:118;3793:2;3819:53;3864:7;3855:6;3844:9;3840:22;3819:53;:::i;:::-;3809:63;;3764:118;3270:619;;;;;:::o;3895:329::-;3954:6;4003:2;3991:9;3982:7;3978:23;3974:32;3971:119;;;4009:79;;:::i;:::-;3971:119;4129:1;4154:53;4199:7;4190:6;4179:9;4175:22;4154:53;:::i;:::-;4144:63;;4100:117;3895:329;;;;:::o;4230:169::-;4314:11;4348:6;4343:3;4336:19;4388:4;4383:3;4379:14;4364:29;;4230:169;;;;:::o;4405:171::-;4545:23;4541:1;4533:6;4529:14;4522:47;4405:171;:::o;4582:366::-;4724:3;4745:67;4809:2;4804:3;4745:67;:::i;:::-;4738:74;;4821:93;4910:3;4821:93;:::i;:::-;4939:2;4934:3;4930:12;4923:19;;4582:366;;;:::o;4954:419::-;5120:4;5158:2;5147:9;5143:18;5135:26;;5207:9;5201:4;5197:20;5193:1;5182:9;5178:17;5171:47;5235:131;5361:4;5235:131;:::i;:::-;5227:139;;4954:419;;;:::o;5379:224::-;5519:34;5515:1;5507:6;5503:14;5496:58;5588:7;5583:2;5575:6;5571:15;5564:32;5379:224;:::o;5609:366::-;5751:3;5772:67;5836:2;5831:3;5772:67;:::i;:::-;5765:74;;5848:93;5937:3;5848:93;:::i;:::-;5966:2;5961:3;5957:12;5950:19;;5609:366;;;:::o;5981:419::-;6147:4;6185:2;6174:9;6170:18;6162:26;;6234:9;6228:4;6224:20;6220:1;6209:9;6205:17;6198:47;6262:131;6388:4;6262:131;:::i;:::-;6254:139;;5981:419;;;:::o;6406:226::-;6546:34;6542:1;6534:6;6530:14;6523:58;6615:9;6610:2;6602:6;6598:15;6591:34;6406:226;:::o;6638:366::-;6780:3;6801:67;6865:2;6860:3;6801:67;:::i;:::-;6794:74;;6877:93;6966:3;6877:93;:::i;:::-;6995:2;6990:3;6986:12;6979:19;;6638:366;;;:::o;7010:419::-;7176:4;7214:2;7203:9;7199:18;7191:26;;7263:9;7257:4;7253:20;7249:1;7238:9;7234:17;7227:47;7291:131;7417:4;7291:131;:::i;:::-;7283:139;;7010:419;;;:::o;7435:115::-;7520:23;7537:5;7520:23;:::i;:::-;7515:3;7508:36;7435:115;;:::o;7556:218::-;7647:4;7685:2;7674:9;7670:18;7662:26;;7698:69;7764:1;7753:9;7749:17;7740:6;7698:69;:::i;:::-;7556:218;;;;:::o;7780:228::-;7920:34;7916:1;7908:6;7904:14;7897:58;7989:11;7984:2;7976:6;7972:15;7965:36;7780:228;:::o;8014:366::-;8156:3;8177:67;8241:2;8236:3;8177:67;:::i;:::-;8170:74;;8253:93;8342:3;8253:93;:::i;:::-;8371:2;8366:3;8362:12;8355:19;;8014:366;;;:::o;8386:419::-;8552:4;8590:2;8579:9;8575:18;8567:26;;8639:9;8633:4;8629:20;8625:1;8614:9;8610:17;8603:47;8667:131;8793:4;8667:131;:::i;:::-;8659:139;;8386:419;;;:::o;8811:173::-;8951:25;8947:1;8939:6;8935:14;8928:49;8811:173;:::o;8990:366::-;9132:3;9153:67;9217:2;9212:3;9153:67;:::i;:::-;9146:74;;9229:93;9318:3;9229:93;:::i;:::-;9347:2;9342:3;9338:12;9331:19;;8990:366;;;:::o;9362:419::-;9528:4;9566:2;9555:9;9551:18;9543:26;;9615:9;9609:4;9605:20;9601:1;9590:9;9586:17;9579:47;9643:131;9769:4;9643:131;:::i;:::-;9635:139;;9362:419;;;:::o;9787:118::-;9874:24;9892:5;9874:24;:::i;:::-;9869:3;9862:37;9787:118;;:::o;9911:222::-;10004:4;10042:2;10031:9;10027:18;10019:26;;10055:71;10123:1;10112:9;10108:17;10099:6;10055:71;:::i;:::-;9911:222;;;;:::o;10139:182::-;10279:34;10275:1;10267:6;10263:14;10256:58;10139:182;:::o;10327:366::-;10469:3;10490:67;10554:2;10549:3;10490:67;:::i;:::-;10483:74;;10566:93;10655:3;10566:93;:::i;:::-;10684:2;10679:3;10675:12;10668:19;;10327:366;;;:::o;10699:419::-;10865:4;10903:2;10892:9;10888:18;10880:26;;10952:9;10946:4;10942:20;10938:1;10927:9;10923:17;10916:47;10980:131;11106:4;10980:131;:::i;:::-;10972:139;;10699:419;;;:::o", "source": "// SPDX-License-Identifier: UNLICENSED\n\n/**\n * @title GatewaySettingManager\n * @dev This contract manages the settings and configurations for the Gateway protocol.\n */\npragma solidity ^0.8.18;\n\nimport '@openzeppelin/contracts-upgradeable/access/Ownable2StepUpgradeable.sol';\n\ncontract GatewaySettingManager is Ownable2StepUpgradeable {\n\tuint256 internal MAX_BPS;\n\tuint64 internal protocolFeePercent;\n\taddress internal treasuryAddress;\n\taddress internal _aggregatorAddress;\n\tmapping(address => uint256) internal _isTokenSupported;\n\n\t// this should decrease if more slots are needed on this contract to avoid collisions with base contract\n\tuint256[50] private __gap;\n\n\n\tevent SettingManagerBool(bytes32 indexed what, address indexed value, uint256 status);\n\tevent ProtocolFeeUpdated(uint64 protocolFee);\n\tevent ProtocolAddressUpdated(bytes32 indexed what, address indexed treasuryAddress);\n\tevent SetFeeRecipient(address indexed treasuryAddress);\n\n\t/* ##################################################################\n OWNER FUNCTIONS\n ################################################################## */\n\n\t/**\n\t * @dev Sets the boolean value for a specific setting.\n\t * @param what The setting to be updated.\n\t * @param value The address or value associated with the setting.\n\t * @param status The boolean value to be set.\n\t * Requirements:\n\t * - The value must not be a zero address.\n\t */\n\tfunction settingManagerBool(bytes32 what, address value, uint256 status) external onlyOwner {\n\t\trequire(value != address(0), 'Gateway: zero address');\n\t\trequire(status == 1 || status == 2, 'Gateway: invalid status');\n\t\tif (what == 'token') {\n\t\t\t_isTokenSupported[value] = status;\n\t\t\temit SettingManagerBool(what, value, status);\n\t\t}\n\t}\n\n\t/**\n\t * @dev Updates the protocol fee percentage.\n\t * @param _protocolFeePercent The new protocol fee percentage to be set.\n\t */\n\tfunction updateProtocolFee(uint64 _protocolFeePercent) external onlyOwner {\n\t\tprotocolFeePercent = _protocolFeePercent;\n\t\temit ProtocolFeeUpdated(_protocolFeePercent);\n\t}\n\n\t/**\n\t * @dev Updates a protocol address.\n\t * @param what The address type to be updated (treasury or aggregator).\n\t * @param value The new address to be set.\n\t * Requirements:\n\t * - The value must not be a zero address.\n\t */\n\tfunction updateProtocolAddress(bytes32 what, address value) external onlyOwner {\n\t\trequire(value != address(0), 'Gateway: zero address');\n\t\tbool updated;\n\t\tif (what == 'treasury') {\n\t\t\trequire(treasuryAddress != value, 'Gateway: treasury address already set');\n\t\t\ttreasuryAddress = value;\n\t\t\tupdated = true;\n\t\t} else if (what == 'aggregator') {\n\t\t\trequire(_aggregatorAddress != value, 'Gateway: aggregator address already set');\n\t\t\t_aggregatorAddress = value;\n\t\t\tupdated = true;\n\t\t}\n\t\tif (updated) {\n\t\t\temit ProtocolAddressUpdated(what, value);\n\t\t}\n\t}\n}\n", - "sourcePath": "/Users/chibie/paycrest/contracts/contracts/GatewaySettingManager.sol", + "sourcePath": "/Users/encryption/Downloads/projects/paycrest/paycrestContract/contracts/GatewaySettingManager.sol", "ast": { - "absolutePath": "/Users/chibie/paycrest/contracts/contracts/GatewaySettingManager.sol", + "absolutePath": "/Users/encryption/Downloads/projects/paycrest/paycrestContract/contracts/GatewaySettingManager.sol", "exportedSymbols": { "ContextUpgradeable": [ - 1892 + 1889 ], "GatewaySettingManager": [ - 766 + 763 ], "Initializable": [ - 1383 + 1380 ], "Ownable2StepUpgradeable": [ - 1081 + 1078 ], "OwnableUpgradeable": [ - 1214 + 1211 ] }, - "id": 767, + "id": 764, "license": "UNLICENSED", "nodeType": "SourceUnit", "nodes": [ { - "id": 584, + "id": 581, "literals": [ "solidity", "^", @@ -273,11 +273,11 @@ { "absolutePath": "@openzeppelin/contracts-upgradeable/access/Ownable2StepUpgradeable.sol", "file": "@openzeppelin/contracts-upgradeable/access/Ownable2StepUpgradeable.sol", - "id": 585, + "id": 582, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", - "scope": 767, - "sourceUnit": 1082, + "scope": 764, + "sourceUnit": 1079, "src": "194:80:1", "symbolAliases": [], "unitAlias": "" @@ -287,16 +287,16 @@ "baseContracts": [ { "baseName": { - "id": 586, + "id": 583, "name": "Ownable2StepUpgradeable", "nameLocations": [ "310:23:1" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 1081, + "referencedDeclaration": 1078, "src": "310:23:1" }, - "id": 587, + "id": 584, "nodeType": "InheritanceSpecifier", "src": "310:23:1" } @@ -305,13 +305,13 @@ "contractDependencies": [], "contractKind": "contract", "fullyImplemented": true, - "id": 766, + "id": 763, "linearizedBaseContracts": [ - 766, - 1081, - 1214, - 1892, - 1383 + 763, + 1078, + 1211, + 1889, + 1380 ], "name": "GatewaySettingManager", "nameLocation": "285:21:1", @@ -319,12 +319,12 @@ "nodes": [ { "constant": false, - "id": 589, + "id": 586, "mutability": "mutable", "name": "MAX_BPS", "nameLocation": "354:7:1", "nodeType": "VariableDeclaration", - "scope": 766, + "scope": 763, "src": "337:24:1", "stateVariable": true, "storageLocation": "default", @@ -333,7 +333,7 @@ "typeString": "uint256" }, "typeName": { - "id": 588, + "id": 585, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "337:7:1", @@ -346,12 +346,12 @@ }, { "constant": false, - "id": 591, + "id": 588, "mutability": "mutable", "name": "protocolFeePercent", "nameLocation": "380:18:1", "nodeType": "VariableDeclaration", - "scope": 766, + "scope": 763, "src": "364:34:1", "stateVariable": true, "storageLocation": "default", @@ -360,7 +360,7 @@ "typeString": "uint64" }, "typeName": { - "id": 590, + "id": 587, "name": "uint64", "nodeType": "ElementaryTypeName", "src": "364:6:1", @@ -373,12 +373,12 @@ }, { "constant": false, - "id": 593, + "id": 590, "mutability": "mutable", "name": "treasuryAddress", "nameLocation": "418:15:1", "nodeType": "VariableDeclaration", - "scope": 766, + "scope": 763, "src": "401:32:1", "stateVariable": true, "storageLocation": "default", @@ -387,7 +387,7 @@ "typeString": "address" }, "typeName": { - "id": 592, + "id": 589, "name": "address", "nodeType": "ElementaryTypeName", "src": "401:7:1", @@ -401,12 +401,12 @@ }, { "constant": false, - "id": 595, + "id": 592, "mutability": "mutable", "name": "_aggregatorAddress", "nameLocation": "453:18:1", "nodeType": "VariableDeclaration", - "scope": 766, + "scope": 763, "src": "436:35:1", "stateVariable": true, "storageLocation": "default", @@ -415,7 +415,7 @@ "typeString": "address" }, "typeName": { - "id": 594, + "id": 591, "name": "address", "nodeType": "ElementaryTypeName", "src": "436:7:1", @@ -429,12 +429,12 @@ }, { "constant": false, - "id": 599, + "id": 596, "mutability": "mutable", "name": "_isTokenSupported", "nameLocation": "511:17:1", "nodeType": "VariableDeclaration", - "scope": 766, + "scope": 763, "src": "474:54:1", "stateVariable": true, "storageLocation": "default", @@ -443,11 +443,11 @@ "typeString": "mapping(address => uint256)" }, "typeName": { - "id": 598, + "id": 595, "keyName": "", "keyNameLocation": "-1:-1:-1", "keyType": { - "id": 596, + "id": 593, "name": "address", "nodeType": "ElementaryTypeName", "src": "482:7:1", @@ -465,7 +465,7 @@ "valueName": "", "valueNameLocation": "-1:-1:-1", "valueType": { - "id": 597, + "id": 594, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "493:7:1", @@ -479,12 +479,12 @@ }, { "constant": false, - "id": 603, + "id": 600, "mutability": "mutable", "name": "__gap", "nameLocation": "658:5:1", "nodeType": "VariableDeclaration", - "scope": 766, + "scope": 763, "src": "638:25:1", "stateVariable": true, "storageLocation": "default", @@ -494,7 +494,7 @@ }, "typeName": { "baseType": { - "id": 600, + "id": 597, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "638:7:1", @@ -503,10 +503,10 @@ "typeString": "uint256" } }, - "id": 602, + "id": 599, "length": { "hexValue": "3530", - "id": 601, + "id": 598, "isConstant": false, "isLValue": false, "isPure": true, @@ -532,23 +532,23 @@ { "anonymous": false, "eventSelector": "cfa976492af7c14a916cc3a239f4c9c75bbd7f5f0e398beb41d892c7eeccae4c", - "id": 611, + "id": 608, "name": "SettingManagerBool", "nameLocation": "674:18:1", "nodeType": "EventDefinition", "parameters": { - "id": 610, + "id": 607, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 605, + "id": 602, "indexed": true, "mutability": "mutable", "name": "what", "nameLocation": "709:4:1", "nodeType": "VariableDeclaration", - "scope": 611, + "scope": 608, "src": "693:20:1", "stateVariable": false, "storageLocation": "default", @@ -557,7 +557,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 604, + "id": 601, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "693:7:1", @@ -570,13 +570,13 @@ }, { "constant": false, - "id": 607, + "id": 604, "indexed": true, "mutability": "mutable", "name": "value", "nameLocation": "731:5:1", "nodeType": "VariableDeclaration", - "scope": 611, + "scope": 608, "src": "715:21:1", "stateVariable": false, "storageLocation": "default", @@ -585,7 +585,7 @@ "typeString": "address" }, "typeName": { - "id": 606, + "id": 603, "name": "address", "nodeType": "ElementaryTypeName", "src": "715:7:1", @@ -599,13 +599,13 @@ }, { "constant": false, - "id": 609, + "id": 606, "indexed": false, "mutability": "mutable", "name": "status", "nameLocation": "746:6:1", "nodeType": "VariableDeclaration", - "scope": 611, + "scope": 608, "src": "738:14:1", "stateVariable": false, "storageLocation": "default", @@ -614,7 +614,7 @@ "typeString": "uint256" }, "typeName": { - "id": 608, + "id": 605, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "738:7:1", @@ -633,23 +633,23 @@ { "anonymous": false, "eventSelector": "1ce29a697a4765bd17d91df93ba75b250b629ecf030553ff1f6ab59f15ae6c7b", - "id": 615, + "id": 612, "name": "ProtocolFeeUpdated", "nameLocation": "762:18:1", "nodeType": "EventDefinition", "parameters": { - "id": 614, + "id": 611, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 613, + "id": 610, "indexed": false, "mutability": "mutable", "name": "protocolFee", "nameLocation": "788:11:1", "nodeType": "VariableDeclaration", - "scope": 615, + "scope": 612, "src": "781:18:1", "stateVariable": false, "storageLocation": "default", @@ -658,7 +658,7 @@ "typeString": "uint64" }, "typeName": { - "id": 612, + "id": 609, "name": "uint64", "nodeType": "ElementaryTypeName", "src": "781:6:1", @@ -677,23 +677,23 @@ { "anonymous": false, "eventSelector": "bbc5b96e57cfecb3dbeeadf92e87f15e58e64fcd75cbe256dcc5d9ef2e51e8a4", - "id": 621, + "id": 618, "name": "ProtocolAddressUpdated", "nameLocation": "809:22:1", "nodeType": "EventDefinition", "parameters": { - "id": 620, + "id": 617, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 617, + "id": 614, "indexed": true, "mutability": "mutable", "name": "what", "nameLocation": "848:4:1", "nodeType": "VariableDeclaration", - "scope": 621, + "scope": 618, "src": "832:20:1", "stateVariable": false, "storageLocation": "default", @@ -702,7 +702,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 616, + "id": 613, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "832:7:1", @@ -715,13 +715,13 @@ }, { "constant": false, - "id": 619, + "id": 616, "indexed": true, "mutability": "mutable", "name": "treasuryAddress", "nameLocation": "870:15:1", "nodeType": "VariableDeclaration", - "scope": 621, + "scope": 618, "src": "854:31:1", "stateVariable": false, "storageLocation": "default", @@ -730,7 +730,7 @@ "typeString": "address" }, "typeName": { - "id": 618, + "id": 615, "name": "address", "nodeType": "ElementaryTypeName", "src": "854:7:1", @@ -750,23 +750,23 @@ { "anonymous": false, "eventSelector": "2e979f80fe4d43055c584cf4a8467c55875ea36728fc37176c05acd784eb7a73", - "id": 625, + "id": 622, "name": "SetFeeRecipient", "nameLocation": "895:15:1", "nodeType": "EventDefinition", "parameters": { - "id": 624, + "id": 621, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 623, + "id": 620, "indexed": true, "mutability": "mutable", "name": "treasuryAddress", "nameLocation": "927:15:1", "nodeType": "VariableDeclaration", - "scope": 625, + "scope": 622, "src": "911:31:1", "stateVariable": false, "storageLocation": "default", @@ -775,7 +775,7 @@ "typeString": "address" }, "typeName": { - "id": 622, + "id": 619, "name": "address", "nodeType": "ElementaryTypeName", "src": "911:7:1", @@ -794,7 +794,7 @@ }, { "body": { - "id": 675, + "id": 672, "nodeType": "Block", "src": "1518:243:1", "statements": [ @@ -806,17 +806,17 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 643, + "id": 640, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 638, + "id": 635, "name": "value", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 630, + "referencedDeclaration": 627, "src": "1530:5:1", "typeDescriptions": { "typeIdentifier": "t_address", @@ -829,7 +829,7 @@ "arguments": [ { "hexValue": "30", - "id": 641, + "id": 638, "isConstant": false, "isLValue": false, "isPure": true, @@ -851,7 +851,7 @@ "typeString": "int_const 0" } ], - "id": 640, + "id": 637, "isConstant": false, "isLValue": false, "isPure": true, @@ -863,14 +863,14 @@ "typeString": "type(address)" }, "typeName": { - "id": 639, + "id": 636, "name": "address", "nodeType": "ElementaryTypeName", "src": "1539:7:1", "typeDescriptions": {} } }, - "id": 642, + "id": 639, "isConstant": false, "isLValue": false, "isPure": true, @@ -894,7 +894,7 @@ }, { "hexValue": "476174657761793a207a65726f2061646472657373", - "id": 644, + "id": 641, "isConstant": false, "isLValue": false, "isPure": true, @@ -920,7 +920,7 @@ "typeString": "literal_string \"Gateway: zero address\"" } ], - "id": 637, + "id": 634, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -934,7 +934,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 645, + "id": 642, "isConstant": false, "isLValue": false, "isPure": false, @@ -950,7 +950,7 @@ "typeString": "tuple()" } }, - "id": 646, + "id": 643, "nodeType": "ExpressionStatement", "src": "1522:53:1" }, @@ -962,7 +962,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 654, + "id": 651, "isConstant": false, "isLValue": false, "isPure": false, @@ -972,17 +972,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 650, + "id": 647, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 648, + "id": 645, "name": "status", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 632, + "referencedDeclaration": 629, "src": "1587:6:1", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -993,7 +993,7 @@ "operator": "==", "rightExpression": { "hexValue": "31", - "id": 649, + "id": 646, "isConstant": false, "isLValue": false, "isPure": true, @@ -1020,17 +1020,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 653, + "id": 650, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 651, + "id": 648, "name": "status", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 632, + "referencedDeclaration": 629, "src": "1602:6:1", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1041,7 +1041,7 @@ "operator": "==", "rightExpression": { "hexValue": "32", - "id": 652, + "id": 649, "isConstant": false, "isLValue": false, "isPure": true, @@ -1069,7 +1069,7 @@ }, { "hexValue": "476174657761793a20696e76616c696420737461747573", - "id": 655, + "id": 652, "isConstant": false, "isLValue": false, "isPure": true, @@ -1095,7 +1095,7 @@ "typeString": "literal_string \"Gateway: invalid status\"" } ], - "id": 647, + "id": 644, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -1109,7 +1109,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 656, + "id": 653, "isConstant": false, "isLValue": false, "isPure": false, @@ -1125,7 +1125,7 @@ "typeString": "tuple()" } }, - "id": 657, + "id": 654, "nodeType": "ExpressionStatement", "src": "1579:62:1" }, @@ -1135,17 +1135,17 @@ "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, - "id": 660, + "id": 657, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 658, + "id": 655, "name": "what", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 628, + "referencedDeclaration": 625, "src": "1649:4:1", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -1156,7 +1156,7 @@ "operator": "==", "rightExpression": { "hexValue": "746f6b656e", - "id": 659, + "id": 656, "isConstant": false, "isLValue": false, "isPure": true, @@ -1176,41 +1176,41 @@ "typeString": "bool" } }, - "id": 674, + "id": 671, "nodeType": "IfStatement", "src": "1645:113:1", "trueBody": { - "id": 673, + "id": 670, "nodeType": "Block", "src": "1666:92:1", "statements": [ { "expression": { - "id": 665, + "id": 662, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 661, + "id": 658, "name": "_isTokenSupported", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 599, + "referencedDeclaration": 596, "src": "1671:17:1", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 663, + "id": 660, "indexExpression": { - "id": 662, + "id": 659, "name": "value", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 630, + "referencedDeclaration": 627, "src": "1689:5:1", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1231,11 +1231,11 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 664, + "id": 661, "name": "status", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 632, + "referencedDeclaration": 629, "src": "1698:6:1", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1248,7 +1248,7 @@ "typeString": "uint256" } }, - "id": 666, + "id": 663, "nodeType": "ExpressionStatement", "src": "1671:33:1" }, @@ -1256,11 +1256,11 @@ "eventCall": { "arguments": [ { - "id": 668, + "id": 665, "name": "what", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 628, + "referencedDeclaration": 625, "src": "1733:4:1", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -1268,11 +1268,11 @@ } }, { - "id": 669, + "id": 666, "name": "value", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 630, + "referencedDeclaration": 627, "src": "1739:5:1", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1280,11 +1280,11 @@ } }, { - "id": 670, + "id": 667, "name": "status", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 632, + "referencedDeclaration": 629, "src": "1746:6:1", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1307,18 +1307,18 @@ "typeString": "uint256" } ], - "id": 667, + "id": 664, "name": "SettingManagerBool", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 611, + "referencedDeclaration": 608, "src": "1714:18:1", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (bytes32,address,uint256)" } }, - "id": 671, + "id": 668, "isConstant": false, "isLValue": false, "isPure": false, @@ -1334,7 +1334,7 @@ "typeString": "tuple()" } }, - "id": 672, + "id": 669, "nodeType": "EmitStatement", "src": "1709:44:1" } @@ -1344,27 +1344,27 @@ ] }, "documentation": { - "id": 626, + "id": 623, "nodeType": "StructuredDocumentation", "src": "1141:283:1", "text": " @dev Sets the boolean value for a specific setting.\n @param what The setting to be updated.\n @param value The address or value associated with the setting.\n @param status The boolean value to be set.\n Requirements:\n - The value must not be a zero address." }, "functionSelector": "cd992400", - "id": 676, + "id": 673, "implemented": true, "kind": "function", "modifiers": [ { - "id": 635, + "id": 632, "kind": "modifierInvocation", "modifierName": { - "id": 634, + "id": 631, "name": "onlyOwner", "nameLocations": [ "1508:9:1" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 1128, + "referencedDeclaration": 1125, "src": "1508:9:1" }, "nodeType": "ModifierInvocation", @@ -1375,17 +1375,17 @@ "nameLocation": "1435:18:1", "nodeType": "FunctionDefinition", "parameters": { - "id": 633, + "id": 630, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 628, + "id": 625, "mutability": "mutable", "name": "what", "nameLocation": "1462:4:1", "nodeType": "VariableDeclaration", - "scope": 676, + "scope": 673, "src": "1454:12:1", "stateVariable": false, "storageLocation": "default", @@ -1394,7 +1394,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 627, + "id": 624, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "1454:7:1", @@ -1407,12 +1407,12 @@ }, { "constant": false, - "id": 630, + "id": 627, "mutability": "mutable", "name": "value", "nameLocation": "1476:5:1", "nodeType": "VariableDeclaration", - "scope": 676, + "scope": 673, "src": "1468:13:1", "stateVariable": false, "storageLocation": "default", @@ -1421,7 +1421,7 @@ "typeString": "address" }, "typeName": { - "id": 629, + "id": 626, "name": "address", "nodeType": "ElementaryTypeName", "src": "1468:7:1", @@ -1435,12 +1435,12 @@ }, { "constant": false, - "id": 632, + "id": 629, "mutability": "mutable", "name": "status", "nameLocation": "1491:6:1", "nodeType": "VariableDeclaration", - "scope": 676, + "scope": 673, "src": "1483:14:1", "stateVariable": false, "storageLocation": "default", @@ -1449,7 +1449,7 @@ "typeString": "uint256" }, "typeName": { - "id": 631, + "id": 628, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1483:7:1", @@ -1464,12 +1464,12 @@ "src": "1453:45:1" }, "returnParameters": { - "id": 636, + "id": 633, "nodeType": "ParameterList", "parameters": [], "src": "1518:0:1" }, - "scope": 766, + "scope": 763, "src": "1426:335:1", "stateMutability": "nonpayable", "virtual": false, @@ -1477,23 +1477,23 @@ }, { "body": { - "id": 692, + "id": 689, "nodeType": "Block", "src": "1968:96:1", "statements": [ { "expression": { - "id": 686, + "id": 683, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 684, + "id": 681, "name": "protocolFeePercent", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 591, + "referencedDeclaration": 588, "src": "1972:18:1", "typeDescriptions": { "typeIdentifier": "t_uint64", @@ -1503,11 +1503,11 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 685, + "id": 682, "name": "_protocolFeePercent", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 679, + "referencedDeclaration": 676, "src": "1993:19:1", "typeDescriptions": { "typeIdentifier": "t_uint64", @@ -1520,7 +1520,7 @@ "typeString": "uint64" } }, - "id": 687, + "id": 684, "nodeType": "ExpressionStatement", "src": "1972:40:1" }, @@ -1528,11 +1528,11 @@ "eventCall": { "arguments": [ { - "id": 689, + "id": 686, "name": "_protocolFeePercent", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 679, + "referencedDeclaration": 676, "src": "2040:19:1", "typeDescriptions": { "typeIdentifier": "t_uint64", @@ -1547,18 +1547,18 @@ "typeString": "uint64" } ], - "id": 688, + "id": 685, "name": "ProtocolFeeUpdated", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 615, + "referencedDeclaration": 612, "src": "2021:18:1", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_uint64_$returns$__$", "typeString": "function (uint64)" } }, - "id": 690, + "id": 687, "isConstant": false, "isLValue": false, "isPure": false, @@ -1574,34 +1574,34 @@ "typeString": "tuple()" } }, - "id": 691, + "id": 688, "nodeType": "EmitStatement", "src": "2016:44:1" } ] }, "documentation": { - "id": 677, + "id": 674, "nodeType": "StructuredDocumentation", "src": "1764:128:1", "text": " @dev Updates the protocol fee percentage.\n @param _protocolFeePercent The new protocol fee percentage to be set." }, "functionSelector": "47094e2e", - "id": 693, + "id": 690, "implemented": true, "kind": "function", "modifiers": [ { - "id": 682, + "id": 679, "kind": "modifierInvocation", "modifierName": { - "id": 681, + "id": 678, "name": "onlyOwner", "nameLocations": [ "1958:9:1" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 1128, + "referencedDeclaration": 1125, "src": "1958:9:1" }, "nodeType": "ModifierInvocation", @@ -1612,17 +1612,17 @@ "nameLocation": "1903:17:1", "nodeType": "FunctionDefinition", "parameters": { - "id": 680, + "id": 677, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 679, + "id": 676, "mutability": "mutable", "name": "_protocolFeePercent", "nameLocation": "1928:19:1", "nodeType": "VariableDeclaration", - "scope": 693, + "scope": 690, "src": "1921:26:1", "stateVariable": false, "storageLocation": "default", @@ -1631,7 +1631,7 @@ "typeString": "uint64" }, "typeName": { - "id": 678, + "id": 675, "name": "uint64", "nodeType": "ElementaryTypeName", "src": "1921:6:1", @@ -1646,12 +1646,12 @@ "src": "1920:28:1" }, "returnParameters": { - "id": 683, + "id": 680, "nodeType": "ParameterList", "parameters": [], "src": "1968:0:1" }, - "scope": 766, + "scope": 763, "src": "1894:170:1", "stateMutability": "nonpayable", "virtual": false, @@ -1659,7 +1659,7 @@ }, { "body": { - "id": 764, + "id": 761, "nodeType": "Block", "src": "2372:472:1", "statements": [ @@ -1671,17 +1671,17 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 709, + "id": 706, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 704, + "id": 701, "name": "value", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 698, + "referencedDeclaration": 695, "src": "2384:5:1", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1694,7 +1694,7 @@ "arguments": [ { "hexValue": "30", - "id": 707, + "id": 704, "isConstant": false, "isLValue": false, "isPure": true, @@ -1716,7 +1716,7 @@ "typeString": "int_const 0" } ], - "id": 706, + "id": 703, "isConstant": false, "isLValue": false, "isPure": true, @@ -1728,14 +1728,14 @@ "typeString": "type(address)" }, "typeName": { - "id": 705, + "id": 702, "name": "address", "nodeType": "ElementaryTypeName", "src": "2393:7:1", "typeDescriptions": {} } }, - "id": 708, + "id": 705, "isConstant": false, "isLValue": false, "isPure": true, @@ -1759,7 +1759,7 @@ }, { "hexValue": "476174657761793a207a65726f2061646472657373", - "id": 710, + "id": 707, "isConstant": false, "isLValue": false, "isPure": true, @@ -1785,7 +1785,7 @@ "typeString": "literal_string \"Gateway: zero address\"" } ], - "id": 703, + "id": 700, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -1799,7 +1799,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 711, + "id": 708, "isConstant": false, "isLValue": false, "isPure": false, @@ -1815,23 +1815,23 @@ "typeString": "tuple()" } }, - "id": 712, + "id": 709, "nodeType": "ExpressionStatement", "src": "2376:53:1" }, { "assignments": [ - 714 + 711 ], "declarations": [ { "constant": false, - "id": 714, + "id": 711, "mutability": "mutable", "name": "updated", "nameLocation": "2438:7:1", "nodeType": "VariableDeclaration", - "scope": 764, + "scope": 761, "src": "2433:12:1", "stateVariable": false, "storageLocation": "default", @@ -1840,7 +1840,7 @@ "typeString": "bool" }, "typeName": { - "id": 713, + "id": 710, "name": "bool", "nodeType": "ElementaryTypeName", "src": "2433:4:1", @@ -1852,7 +1852,7 @@ "visibility": "internal" } ], - "id": 715, + "id": 712, "nodeType": "VariableDeclarationStatement", "src": "2433:12:1" }, @@ -1862,17 +1862,17 @@ "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, - "id": 718, + "id": 715, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 716, + "id": 713, "name": "what", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 696, + "referencedDeclaration": 693, "src": "2453:4:1", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -1883,7 +1883,7 @@ "operator": "==", "rightExpression": { "hexValue": "7472656173757279", - "id": 717, + "id": 714, "isConstant": false, "isLValue": false, "isPure": true, @@ -1909,17 +1909,17 @@ "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, - "id": 737, + "id": 734, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 735, + "id": 732, "name": "what", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 696, + "referencedDeclaration": 693, "src": "2614:4:1", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -1930,7 +1930,7 @@ "operator": "==", "rightExpression": { "hexValue": "61676772656761746f72", - "id": 736, + "id": 733, "isConstant": false, "isLValue": false, "isPure": true, @@ -1950,11 +1950,11 @@ "typeString": "bool" } }, - "id": 754, + "id": 751, "nodeType": "IfStatement", "src": "2610:165:1", "trueBody": { - "id": 753, + "id": 750, "nodeType": "Block", "src": "2636:139:1", "statements": [ @@ -1966,17 +1966,17 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 741, + "id": 738, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 739, + "id": 736, "name": "_aggregatorAddress", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 595, + "referencedDeclaration": 592, "src": "2649:18:1", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1986,11 +1986,11 @@ "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { - "id": 740, + "id": 737, "name": "value", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 698, + "referencedDeclaration": 695, "src": "2671:5:1", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2005,7 +2005,7 @@ }, { "hexValue": "476174657761793a2061676772656761746f72206164647265737320616c726561647920736574", - "id": 742, + "id": 739, "isConstant": false, "isLValue": false, "isPure": true, @@ -2031,7 +2031,7 @@ "typeString": "literal_string \"Gateway: aggregator address already set\"" } ], - "id": 738, + "id": 735, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -2045,7 +2045,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 743, + "id": 740, "isConstant": false, "isLValue": false, "isPure": false, @@ -2061,23 +2061,23 @@ "typeString": "tuple()" } }, - "id": 744, + "id": 741, "nodeType": "ExpressionStatement", "src": "2641:79:1" }, { "expression": { - "id": 747, + "id": 744, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 745, + "id": 742, "name": "_aggregatorAddress", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 595, + "referencedDeclaration": 592, "src": "2725:18:1", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2087,11 +2087,11 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 746, + "id": 743, "name": "value", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 698, + "referencedDeclaration": 695, "src": "2746:5:1", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2104,23 +2104,23 @@ "typeString": "address" } }, - "id": 748, + "id": 745, "nodeType": "ExpressionStatement", "src": "2725:26:1" }, { "expression": { - "id": 751, + "id": 748, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 749, + "id": 746, "name": "updated", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 714, + "referencedDeclaration": 711, "src": "2756:7:1", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -2131,7 +2131,7 @@ "operator": "=", "rightHandSide": { "hexValue": "74727565", - "id": 750, + "id": 747, "isConstant": false, "isLValue": false, "isPure": true, @@ -2151,18 +2151,18 @@ "typeString": "bool" } }, - "id": 752, + "id": 749, "nodeType": "ExpressionStatement", "src": "2756:14:1" } ] } }, - "id": 755, + "id": 752, "nodeType": "IfStatement", "src": "2449:326:1", "trueBody": { - "id": 734, + "id": 731, "nodeType": "Block", "src": "2473:131:1", "statements": [ @@ -2174,17 +2174,17 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 722, + "id": 719, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 720, + "id": 717, "name": "treasuryAddress", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 593, + "referencedDeclaration": 590, "src": "2486:15:1", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2194,11 +2194,11 @@ "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { - "id": 721, + "id": 718, "name": "value", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 698, + "referencedDeclaration": 695, "src": "2505:5:1", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2213,7 +2213,7 @@ }, { "hexValue": "476174657761793a207472656173757279206164647265737320616c726561647920736574", - "id": 723, + "id": 720, "isConstant": false, "isLValue": false, "isPure": true, @@ -2239,7 +2239,7 @@ "typeString": "literal_string \"Gateway: treasury address already set\"" } ], - "id": 719, + "id": 716, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -2253,7 +2253,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 724, + "id": 721, "isConstant": false, "isLValue": false, "isPure": false, @@ -2269,23 +2269,23 @@ "typeString": "tuple()" } }, - "id": 725, + "id": 722, "nodeType": "ExpressionStatement", "src": "2478:74:1" }, { "expression": { - "id": 728, + "id": 725, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 726, + "id": 723, "name": "treasuryAddress", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 593, + "referencedDeclaration": 590, "src": "2557:15:1", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2295,11 +2295,11 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 727, + "id": 724, "name": "value", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 698, + "referencedDeclaration": 695, "src": "2575:5:1", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2312,23 +2312,23 @@ "typeString": "address" } }, - "id": 729, + "id": 726, "nodeType": "ExpressionStatement", "src": "2557:23:1" }, { "expression": { - "id": 732, + "id": 729, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 730, + "id": 727, "name": "updated", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 714, + "referencedDeclaration": 711, "src": "2585:7:1", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -2339,7 +2339,7 @@ "operator": "=", "rightHandSide": { "hexValue": "74727565", - "id": 731, + "id": 728, "isConstant": false, "isLValue": false, "isPure": true, @@ -2359,7 +2359,7 @@ "typeString": "bool" } }, - "id": 733, + "id": 730, "nodeType": "ExpressionStatement", "src": "2585:14:1" } @@ -2368,22 +2368,22 @@ }, { "condition": { - "id": 756, + "id": 753, "name": "updated", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 714, + "referencedDeclaration": 711, "src": "2782:7:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 763, + "id": 760, "nodeType": "IfStatement", "src": "2778:63:1", "trueBody": { - "id": 762, + "id": 759, "nodeType": "Block", "src": "2791:50:1", "statements": [ @@ -2391,11 +2391,11 @@ "eventCall": { "arguments": [ { - "id": 758, + "id": 755, "name": "what", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 696, + "referencedDeclaration": 693, "src": "2824:4:1", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -2403,11 +2403,11 @@ } }, { - "id": 759, + "id": 756, "name": "value", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 698, + "referencedDeclaration": 695, "src": "2830:5:1", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2426,18 +2426,18 @@ "typeString": "address" } ], - "id": 757, + "id": 754, "name": "ProtocolAddressUpdated", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 621, + "referencedDeclaration": 618, "src": "2801:22:1", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_address_$returns$__$", "typeString": "function (bytes32,address)" } }, - "id": 760, + "id": 757, "isConstant": false, "isLValue": false, "isPure": false, @@ -2453,7 +2453,7 @@ "typeString": "tuple()" } }, - "id": 761, + "id": 758, "nodeType": "EmitStatement", "src": "2796:40:1" } @@ -2463,27 +2463,27 @@ ] }, "documentation": { - "id": 694, + "id": 691, "nodeType": "StructuredDocumentation", "src": "2067:224:1", "text": " @dev Updates a protocol address.\n @param what The address type to be updated (treasury or aggregator).\n @param value The new address to be set.\n Requirements:\n - The value must not be a zero address." }, "functionSelector": "40ebc677", - "id": 765, + "id": 762, "implemented": true, "kind": "function", "modifiers": [ { - "id": 701, + "id": 698, "kind": "modifierInvocation", "modifierName": { - "id": 700, + "id": 697, "name": "onlyOwner", "nameLocations": [ "2362:9:1" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 1128, + "referencedDeclaration": 1125, "src": "2362:9:1" }, "nodeType": "ModifierInvocation", @@ -2494,17 +2494,17 @@ "nameLocation": "2302:21:1", "nodeType": "FunctionDefinition", "parameters": { - "id": 699, + "id": 696, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 696, + "id": 693, "mutability": "mutable", "name": "what", "nameLocation": "2332:4:1", "nodeType": "VariableDeclaration", - "scope": 765, + "scope": 762, "src": "2324:12:1", "stateVariable": false, "storageLocation": "default", @@ -2513,7 +2513,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 695, + "id": 692, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "2324:7:1", @@ -2526,12 +2526,12 @@ }, { "constant": false, - "id": 698, + "id": 695, "mutability": "mutable", "name": "value", "nameLocation": "2346:5:1", "nodeType": "VariableDeclaration", - "scope": 765, + "scope": 762, "src": "2338:13:1", "stateVariable": false, "storageLocation": "default", @@ -2540,7 +2540,7 @@ "typeString": "address" }, "typeName": { - "id": 697, + "id": 694, "name": "address", "nodeType": "ElementaryTypeName", "src": "2338:7:1", @@ -2556,19 +2556,19 @@ "src": "2323:29:1" }, "returnParameters": { - "id": 702, + "id": 699, "nodeType": "ParameterList", "parameters": [], "src": "2372:0:1" }, - "scope": 766, + "scope": 763, "src": "2293:551:1", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" } ], - "scope": 767, + "scope": 764, "src": "276:2570:1", "usedErrors": [] } @@ -2576,30 +2576,30 @@ "src": "168:2679:1" }, "legacyAST": { - "absolutePath": "/Users/chibie/paycrest/contracts/contracts/GatewaySettingManager.sol", + "absolutePath": "/Users/encryption/Downloads/projects/paycrest/paycrestContract/contracts/GatewaySettingManager.sol", "exportedSymbols": { "ContextUpgradeable": [ - 1892 + 1889 ], "GatewaySettingManager": [ - 766 + 763 ], "Initializable": [ - 1383 + 1380 ], "Ownable2StepUpgradeable": [ - 1081 + 1078 ], "OwnableUpgradeable": [ - 1214 + 1211 ] }, - "id": 767, + "id": 764, "license": "UNLICENSED", "nodeType": "SourceUnit", "nodes": [ { - "id": 584, + "id": 581, "literals": [ "solidity", "^", @@ -2612,11 +2612,11 @@ { "absolutePath": "@openzeppelin/contracts-upgradeable/access/Ownable2StepUpgradeable.sol", "file": "@openzeppelin/contracts-upgradeable/access/Ownable2StepUpgradeable.sol", - "id": 585, + "id": 582, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", - "scope": 767, - "sourceUnit": 1082, + "scope": 764, + "sourceUnit": 1079, "src": "194:80:1", "symbolAliases": [], "unitAlias": "" @@ -2626,16 +2626,16 @@ "baseContracts": [ { "baseName": { - "id": 586, + "id": 583, "name": "Ownable2StepUpgradeable", "nameLocations": [ "310:23:1" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 1081, + "referencedDeclaration": 1078, "src": "310:23:1" }, - "id": 587, + "id": 584, "nodeType": "InheritanceSpecifier", "src": "310:23:1" } @@ -2644,13 +2644,13 @@ "contractDependencies": [], "contractKind": "contract", "fullyImplemented": true, - "id": 766, + "id": 763, "linearizedBaseContracts": [ - 766, - 1081, - 1214, - 1892, - 1383 + 763, + 1078, + 1211, + 1889, + 1380 ], "name": "GatewaySettingManager", "nameLocation": "285:21:1", @@ -2658,12 +2658,12 @@ "nodes": [ { "constant": false, - "id": 589, + "id": 586, "mutability": "mutable", "name": "MAX_BPS", "nameLocation": "354:7:1", "nodeType": "VariableDeclaration", - "scope": 766, + "scope": 763, "src": "337:24:1", "stateVariable": true, "storageLocation": "default", @@ -2672,7 +2672,7 @@ "typeString": "uint256" }, "typeName": { - "id": 588, + "id": 585, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "337:7:1", @@ -2685,12 +2685,12 @@ }, { "constant": false, - "id": 591, + "id": 588, "mutability": "mutable", "name": "protocolFeePercent", "nameLocation": "380:18:1", "nodeType": "VariableDeclaration", - "scope": 766, + "scope": 763, "src": "364:34:1", "stateVariable": true, "storageLocation": "default", @@ -2699,7 +2699,7 @@ "typeString": "uint64" }, "typeName": { - "id": 590, + "id": 587, "name": "uint64", "nodeType": "ElementaryTypeName", "src": "364:6:1", @@ -2712,12 +2712,12 @@ }, { "constant": false, - "id": 593, + "id": 590, "mutability": "mutable", "name": "treasuryAddress", "nameLocation": "418:15:1", "nodeType": "VariableDeclaration", - "scope": 766, + "scope": 763, "src": "401:32:1", "stateVariable": true, "storageLocation": "default", @@ -2726,7 +2726,7 @@ "typeString": "address" }, "typeName": { - "id": 592, + "id": 589, "name": "address", "nodeType": "ElementaryTypeName", "src": "401:7:1", @@ -2740,12 +2740,12 @@ }, { "constant": false, - "id": 595, + "id": 592, "mutability": "mutable", "name": "_aggregatorAddress", "nameLocation": "453:18:1", "nodeType": "VariableDeclaration", - "scope": 766, + "scope": 763, "src": "436:35:1", "stateVariable": true, "storageLocation": "default", @@ -2754,7 +2754,7 @@ "typeString": "address" }, "typeName": { - "id": 594, + "id": 591, "name": "address", "nodeType": "ElementaryTypeName", "src": "436:7:1", @@ -2768,12 +2768,12 @@ }, { "constant": false, - "id": 599, + "id": 596, "mutability": "mutable", "name": "_isTokenSupported", "nameLocation": "511:17:1", "nodeType": "VariableDeclaration", - "scope": 766, + "scope": 763, "src": "474:54:1", "stateVariable": true, "storageLocation": "default", @@ -2782,11 +2782,11 @@ "typeString": "mapping(address => uint256)" }, "typeName": { - "id": 598, + "id": 595, "keyName": "", "keyNameLocation": "-1:-1:-1", "keyType": { - "id": 596, + "id": 593, "name": "address", "nodeType": "ElementaryTypeName", "src": "482:7:1", @@ -2804,7 +2804,7 @@ "valueName": "", "valueNameLocation": "-1:-1:-1", "valueType": { - "id": 597, + "id": 594, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "493:7:1", @@ -2818,12 +2818,12 @@ }, { "constant": false, - "id": 603, + "id": 600, "mutability": "mutable", "name": "__gap", "nameLocation": "658:5:1", "nodeType": "VariableDeclaration", - "scope": 766, + "scope": 763, "src": "638:25:1", "stateVariable": true, "storageLocation": "default", @@ -2833,7 +2833,7 @@ }, "typeName": { "baseType": { - "id": 600, + "id": 597, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "638:7:1", @@ -2842,10 +2842,10 @@ "typeString": "uint256" } }, - "id": 602, + "id": 599, "length": { "hexValue": "3530", - "id": 601, + "id": 598, "isConstant": false, "isLValue": false, "isPure": true, @@ -2871,23 +2871,23 @@ { "anonymous": false, "eventSelector": "cfa976492af7c14a916cc3a239f4c9c75bbd7f5f0e398beb41d892c7eeccae4c", - "id": 611, + "id": 608, "name": "SettingManagerBool", "nameLocation": "674:18:1", "nodeType": "EventDefinition", "parameters": { - "id": 610, + "id": 607, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 605, + "id": 602, "indexed": true, "mutability": "mutable", "name": "what", "nameLocation": "709:4:1", "nodeType": "VariableDeclaration", - "scope": 611, + "scope": 608, "src": "693:20:1", "stateVariable": false, "storageLocation": "default", @@ -2896,7 +2896,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 604, + "id": 601, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "693:7:1", @@ -2909,13 +2909,13 @@ }, { "constant": false, - "id": 607, + "id": 604, "indexed": true, "mutability": "mutable", "name": "value", "nameLocation": "731:5:1", "nodeType": "VariableDeclaration", - "scope": 611, + "scope": 608, "src": "715:21:1", "stateVariable": false, "storageLocation": "default", @@ -2924,7 +2924,7 @@ "typeString": "address" }, "typeName": { - "id": 606, + "id": 603, "name": "address", "nodeType": "ElementaryTypeName", "src": "715:7:1", @@ -2938,13 +2938,13 @@ }, { "constant": false, - "id": 609, + "id": 606, "indexed": false, "mutability": "mutable", "name": "status", "nameLocation": "746:6:1", "nodeType": "VariableDeclaration", - "scope": 611, + "scope": 608, "src": "738:14:1", "stateVariable": false, "storageLocation": "default", @@ -2953,7 +2953,7 @@ "typeString": "uint256" }, "typeName": { - "id": 608, + "id": 605, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "738:7:1", @@ -2972,23 +2972,23 @@ { "anonymous": false, "eventSelector": "1ce29a697a4765bd17d91df93ba75b250b629ecf030553ff1f6ab59f15ae6c7b", - "id": 615, + "id": 612, "name": "ProtocolFeeUpdated", "nameLocation": "762:18:1", "nodeType": "EventDefinition", "parameters": { - "id": 614, + "id": 611, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 613, + "id": 610, "indexed": false, "mutability": "mutable", "name": "protocolFee", "nameLocation": "788:11:1", "nodeType": "VariableDeclaration", - "scope": 615, + "scope": 612, "src": "781:18:1", "stateVariable": false, "storageLocation": "default", @@ -2997,7 +2997,7 @@ "typeString": "uint64" }, "typeName": { - "id": 612, + "id": 609, "name": "uint64", "nodeType": "ElementaryTypeName", "src": "781:6:1", @@ -3016,23 +3016,23 @@ { "anonymous": false, "eventSelector": "bbc5b96e57cfecb3dbeeadf92e87f15e58e64fcd75cbe256dcc5d9ef2e51e8a4", - "id": 621, + "id": 618, "name": "ProtocolAddressUpdated", "nameLocation": "809:22:1", "nodeType": "EventDefinition", "parameters": { - "id": 620, + "id": 617, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 617, + "id": 614, "indexed": true, "mutability": "mutable", "name": "what", "nameLocation": "848:4:1", "nodeType": "VariableDeclaration", - "scope": 621, + "scope": 618, "src": "832:20:1", "stateVariable": false, "storageLocation": "default", @@ -3041,7 +3041,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 616, + "id": 613, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "832:7:1", @@ -3054,13 +3054,13 @@ }, { "constant": false, - "id": 619, + "id": 616, "indexed": true, "mutability": "mutable", "name": "treasuryAddress", "nameLocation": "870:15:1", "nodeType": "VariableDeclaration", - "scope": 621, + "scope": 618, "src": "854:31:1", "stateVariable": false, "storageLocation": "default", @@ -3069,7 +3069,7 @@ "typeString": "address" }, "typeName": { - "id": 618, + "id": 615, "name": "address", "nodeType": "ElementaryTypeName", "src": "854:7:1", @@ -3089,23 +3089,23 @@ { "anonymous": false, "eventSelector": "2e979f80fe4d43055c584cf4a8467c55875ea36728fc37176c05acd784eb7a73", - "id": 625, + "id": 622, "name": "SetFeeRecipient", "nameLocation": "895:15:1", "nodeType": "EventDefinition", "parameters": { - "id": 624, + "id": 621, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 623, + "id": 620, "indexed": true, "mutability": "mutable", "name": "treasuryAddress", "nameLocation": "927:15:1", "nodeType": "VariableDeclaration", - "scope": 625, + "scope": 622, "src": "911:31:1", "stateVariable": false, "storageLocation": "default", @@ -3114,7 +3114,7 @@ "typeString": "address" }, "typeName": { - "id": 622, + "id": 619, "name": "address", "nodeType": "ElementaryTypeName", "src": "911:7:1", @@ -3133,7 +3133,7 @@ }, { "body": { - "id": 675, + "id": 672, "nodeType": "Block", "src": "1518:243:1", "statements": [ @@ -3145,17 +3145,17 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 643, + "id": 640, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 638, + "id": 635, "name": "value", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 630, + "referencedDeclaration": 627, "src": "1530:5:1", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3168,7 +3168,7 @@ "arguments": [ { "hexValue": "30", - "id": 641, + "id": 638, "isConstant": false, "isLValue": false, "isPure": true, @@ -3190,7 +3190,7 @@ "typeString": "int_const 0" } ], - "id": 640, + "id": 637, "isConstant": false, "isLValue": false, "isPure": true, @@ -3202,14 +3202,14 @@ "typeString": "type(address)" }, "typeName": { - "id": 639, + "id": 636, "name": "address", "nodeType": "ElementaryTypeName", "src": "1539:7:1", "typeDescriptions": {} } }, - "id": 642, + "id": 639, "isConstant": false, "isLValue": false, "isPure": true, @@ -3233,7 +3233,7 @@ }, { "hexValue": "476174657761793a207a65726f2061646472657373", - "id": 644, + "id": 641, "isConstant": false, "isLValue": false, "isPure": true, @@ -3259,7 +3259,7 @@ "typeString": "literal_string \"Gateway: zero address\"" } ], - "id": 637, + "id": 634, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -3273,7 +3273,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 645, + "id": 642, "isConstant": false, "isLValue": false, "isPure": false, @@ -3289,7 +3289,7 @@ "typeString": "tuple()" } }, - "id": 646, + "id": 643, "nodeType": "ExpressionStatement", "src": "1522:53:1" }, @@ -3301,7 +3301,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 654, + "id": 651, "isConstant": false, "isLValue": false, "isPure": false, @@ -3311,17 +3311,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 650, + "id": 647, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 648, + "id": 645, "name": "status", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 632, + "referencedDeclaration": 629, "src": "1587:6:1", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -3332,7 +3332,7 @@ "operator": "==", "rightExpression": { "hexValue": "31", - "id": 649, + "id": 646, "isConstant": false, "isLValue": false, "isPure": true, @@ -3359,17 +3359,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 653, + "id": 650, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 651, + "id": 648, "name": "status", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 632, + "referencedDeclaration": 629, "src": "1602:6:1", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -3380,7 +3380,7 @@ "operator": "==", "rightExpression": { "hexValue": "32", - "id": 652, + "id": 649, "isConstant": false, "isLValue": false, "isPure": true, @@ -3408,7 +3408,7 @@ }, { "hexValue": "476174657761793a20696e76616c696420737461747573", - "id": 655, + "id": 652, "isConstant": false, "isLValue": false, "isPure": true, @@ -3434,7 +3434,7 @@ "typeString": "literal_string \"Gateway: invalid status\"" } ], - "id": 647, + "id": 644, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -3448,7 +3448,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 656, + "id": 653, "isConstant": false, "isLValue": false, "isPure": false, @@ -3464,7 +3464,7 @@ "typeString": "tuple()" } }, - "id": 657, + "id": 654, "nodeType": "ExpressionStatement", "src": "1579:62:1" }, @@ -3474,17 +3474,17 @@ "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, - "id": 660, + "id": 657, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 658, + "id": 655, "name": "what", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 628, + "referencedDeclaration": 625, "src": "1649:4:1", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -3495,7 +3495,7 @@ "operator": "==", "rightExpression": { "hexValue": "746f6b656e", - "id": 659, + "id": 656, "isConstant": false, "isLValue": false, "isPure": true, @@ -3515,41 +3515,41 @@ "typeString": "bool" } }, - "id": 674, + "id": 671, "nodeType": "IfStatement", "src": "1645:113:1", "trueBody": { - "id": 673, + "id": 670, "nodeType": "Block", "src": "1666:92:1", "statements": [ { "expression": { - "id": 665, + "id": 662, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 661, + "id": 658, "name": "_isTokenSupported", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 599, + "referencedDeclaration": 596, "src": "1671:17:1", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 663, + "id": 660, "indexExpression": { - "id": 662, + "id": 659, "name": "value", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 630, + "referencedDeclaration": 627, "src": "1689:5:1", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3570,11 +3570,11 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 664, + "id": 661, "name": "status", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 632, + "referencedDeclaration": 629, "src": "1698:6:1", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -3587,7 +3587,7 @@ "typeString": "uint256" } }, - "id": 666, + "id": 663, "nodeType": "ExpressionStatement", "src": "1671:33:1" }, @@ -3595,11 +3595,11 @@ "eventCall": { "arguments": [ { - "id": 668, + "id": 665, "name": "what", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 628, + "referencedDeclaration": 625, "src": "1733:4:1", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -3607,11 +3607,11 @@ } }, { - "id": 669, + "id": 666, "name": "value", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 630, + "referencedDeclaration": 627, "src": "1739:5:1", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3619,11 +3619,11 @@ } }, { - "id": 670, + "id": 667, "name": "status", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 632, + "referencedDeclaration": 629, "src": "1746:6:1", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -3646,18 +3646,18 @@ "typeString": "uint256" } ], - "id": 667, + "id": 664, "name": "SettingManagerBool", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 611, + "referencedDeclaration": 608, "src": "1714:18:1", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (bytes32,address,uint256)" } }, - "id": 671, + "id": 668, "isConstant": false, "isLValue": false, "isPure": false, @@ -3673,7 +3673,7 @@ "typeString": "tuple()" } }, - "id": 672, + "id": 669, "nodeType": "EmitStatement", "src": "1709:44:1" } @@ -3683,27 +3683,27 @@ ] }, "documentation": { - "id": 626, + "id": 623, "nodeType": "StructuredDocumentation", "src": "1141:283:1", "text": " @dev Sets the boolean value for a specific setting.\n @param what The setting to be updated.\n @param value The address or value associated with the setting.\n @param status The boolean value to be set.\n Requirements:\n - The value must not be a zero address." }, "functionSelector": "cd992400", - "id": 676, + "id": 673, "implemented": true, "kind": "function", "modifiers": [ { - "id": 635, + "id": 632, "kind": "modifierInvocation", "modifierName": { - "id": 634, + "id": 631, "name": "onlyOwner", "nameLocations": [ "1508:9:1" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 1128, + "referencedDeclaration": 1125, "src": "1508:9:1" }, "nodeType": "ModifierInvocation", @@ -3714,17 +3714,17 @@ "nameLocation": "1435:18:1", "nodeType": "FunctionDefinition", "parameters": { - "id": 633, + "id": 630, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 628, + "id": 625, "mutability": "mutable", "name": "what", "nameLocation": "1462:4:1", "nodeType": "VariableDeclaration", - "scope": 676, + "scope": 673, "src": "1454:12:1", "stateVariable": false, "storageLocation": "default", @@ -3733,7 +3733,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 627, + "id": 624, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "1454:7:1", @@ -3746,12 +3746,12 @@ }, { "constant": false, - "id": 630, + "id": 627, "mutability": "mutable", "name": "value", "nameLocation": "1476:5:1", "nodeType": "VariableDeclaration", - "scope": 676, + "scope": 673, "src": "1468:13:1", "stateVariable": false, "storageLocation": "default", @@ -3760,7 +3760,7 @@ "typeString": "address" }, "typeName": { - "id": 629, + "id": 626, "name": "address", "nodeType": "ElementaryTypeName", "src": "1468:7:1", @@ -3774,12 +3774,12 @@ }, { "constant": false, - "id": 632, + "id": 629, "mutability": "mutable", "name": "status", "nameLocation": "1491:6:1", "nodeType": "VariableDeclaration", - "scope": 676, + "scope": 673, "src": "1483:14:1", "stateVariable": false, "storageLocation": "default", @@ -3788,7 +3788,7 @@ "typeString": "uint256" }, "typeName": { - "id": 631, + "id": 628, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1483:7:1", @@ -3803,12 +3803,12 @@ "src": "1453:45:1" }, "returnParameters": { - "id": 636, + "id": 633, "nodeType": "ParameterList", "parameters": [], "src": "1518:0:1" }, - "scope": 766, + "scope": 763, "src": "1426:335:1", "stateMutability": "nonpayable", "virtual": false, @@ -3816,23 +3816,23 @@ }, { "body": { - "id": 692, + "id": 689, "nodeType": "Block", "src": "1968:96:1", "statements": [ { "expression": { - "id": 686, + "id": 683, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 684, + "id": 681, "name": "protocolFeePercent", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 591, + "referencedDeclaration": 588, "src": "1972:18:1", "typeDescriptions": { "typeIdentifier": "t_uint64", @@ -3842,11 +3842,11 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 685, + "id": 682, "name": "_protocolFeePercent", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 679, + "referencedDeclaration": 676, "src": "1993:19:1", "typeDescriptions": { "typeIdentifier": "t_uint64", @@ -3859,7 +3859,7 @@ "typeString": "uint64" } }, - "id": 687, + "id": 684, "nodeType": "ExpressionStatement", "src": "1972:40:1" }, @@ -3867,11 +3867,11 @@ "eventCall": { "arguments": [ { - "id": 689, + "id": 686, "name": "_protocolFeePercent", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 679, + "referencedDeclaration": 676, "src": "2040:19:1", "typeDescriptions": { "typeIdentifier": "t_uint64", @@ -3886,18 +3886,18 @@ "typeString": "uint64" } ], - "id": 688, + "id": 685, "name": "ProtocolFeeUpdated", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 615, + "referencedDeclaration": 612, "src": "2021:18:1", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_uint64_$returns$__$", "typeString": "function (uint64)" } }, - "id": 690, + "id": 687, "isConstant": false, "isLValue": false, "isPure": false, @@ -3913,34 +3913,34 @@ "typeString": "tuple()" } }, - "id": 691, + "id": 688, "nodeType": "EmitStatement", "src": "2016:44:1" } ] }, "documentation": { - "id": 677, + "id": 674, "nodeType": "StructuredDocumentation", "src": "1764:128:1", "text": " @dev Updates the protocol fee percentage.\n @param _protocolFeePercent The new protocol fee percentage to be set." }, "functionSelector": "47094e2e", - "id": 693, + "id": 690, "implemented": true, "kind": "function", "modifiers": [ { - "id": 682, + "id": 679, "kind": "modifierInvocation", "modifierName": { - "id": 681, + "id": 678, "name": "onlyOwner", "nameLocations": [ "1958:9:1" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 1128, + "referencedDeclaration": 1125, "src": "1958:9:1" }, "nodeType": "ModifierInvocation", @@ -3951,17 +3951,17 @@ "nameLocation": "1903:17:1", "nodeType": "FunctionDefinition", "parameters": { - "id": 680, + "id": 677, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 679, + "id": 676, "mutability": "mutable", "name": "_protocolFeePercent", "nameLocation": "1928:19:1", "nodeType": "VariableDeclaration", - "scope": 693, + "scope": 690, "src": "1921:26:1", "stateVariable": false, "storageLocation": "default", @@ -3970,7 +3970,7 @@ "typeString": "uint64" }, "typeName": { - "id": 678, + "id": 675, "name": "uint64", "nodeType": "ElementaryTypeName", "src": "1921:6:1", @@ -3985,12 +3985,12 @@ "src": "1920:28:1" }, "returnParameters": { - "id": 683, + "id": 680, "nodeType": "ParameterList", "parameters": [], "src": "1968:0:1" }, - "scope": 766, + "scope": 763, "src": "1894:170:1", "stateMutability": "nonpayable", "virtual": false, @@ -3998,7 +3998,7 @@ }, { "body": { - "id": 764, + "id": 761, "nodeType": "Block", "src": "2372:472:1", "statements": [ @@ -4010,17 +4010,17 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 709, + "id": 706, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 704, + "id": 701, "name": "value", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 698, + "referencedDeclaration": 695, "src": "2384:5:1", "typeDescriptions": { "typeIdentifier": "t_address", @@ -4033,7 +4033,7 @@ "arguments": [ { "hexValue": "30", - "id": 707, + "id": 704, "isConstant": false, "isLValue": false, "isPure": true, @@ -4055,7 +4055,7 @@ "typeString": "int_const 0" } ], - "id": 706, + "id": 703, "isConstant": false, "isLValue": false, "isPure": true, @@ -4067,14 +4067,14 @@ "typeString": "type(address)" }, "typeName": { - "id": 705, + "id": 702, "name": "address", "nodeType": "ElementaryTypeName", "src": "2393:7:1", "typeDescriptions": {} } }, - "id": 708, + "id": 705, "isConstant": false, "isLValue": false, "isPure": true, @@ -4098,7 +4098,7 @@ }, { "hexValue": "476174657761793a207a65726f2061646472657373", - "id": 710, + "id": 707, "isConstant": false, "isLValue": false, "isPure": true, @@ -4124,7 +4124,7 @@ "typeString": "literal_string \"Gateway: zero address\"" } ], - "id": 703, + "id": 700, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -4138,7 +4138,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 711, + "id": 708, "isConstant": false, "isLValue": false, "isPure": false, @@ -4154,23 +4154,23 @@ "typeString": "tuple()" } }, - "id": 712, + "id": 709, "nodeType": "ExpressionStatement", "src": "2376:53:1" }, { "assignments": [ - 714 + 711 ], "declarations": [ { "constant": false, - "id": 714, + "id": 711, "mutability": "mutable", "name": "updated", "nameLocation": "2438:7:1", "nodeType": "VariableDeclaration", - "scope": 764, + "scope": 761, "src": "2433:12:1", "stateVariable": false, "storageLocation": "default", @@ -4179,7 +4179,7 @@ "typeString": "bool" }, "typeName": { - "id": 713, + "id": 710, "name": "bool", "nodeType": "ElementaryTypeName", "src": "2433:4:1", @@ -4191,7 +4191,7 @@ "visibility": "internal" } ], - "id": 715, + "id": 712, "nodeType": "VariableDeclarationStatement", "src": "2433:12:1" }, @@ -4201,17 +4201,17 @@ "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, - "id": 718, + "id": 715, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 716, + "id": 713, "name": "what", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 696, + "referencedDeclaration": 693, "src": "2453:4:1", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -4222,7 +4222,7 @@ "operator": "==", "rightExpression": { "hexValue": "7472656173757279", - "id": 717, + "id": 714, "isConstant": false, "isLValue": false, "isPure": true, @@ -4248,17 +4248,17 @@ "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, - "id": 737, + "id": 734, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 735, + "id": 732, "name": "what", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 696, + "referencedDeclaration": 693, "src": "2614:4:1", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -4269,7 +4269,7 @@ "operator": "==", "rightExpression": { "hexValue": "61676772656761746f72", - "id": 736, + "id": 733, "isConstant": false, "isLValue": false, "isPure": true, @@ -4289,11 +4289,11 @@ "typeString": "bool" } }, - "id": 754, + "id": 751, "nodeType": "IfStatement", "src": "2610:165:1", "trueBody": { - "id": 753, + "id": 750, "nodeType": "Block", "src": "2636:139:1", "statements": [ @@ -4305,17 +4305,17 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 741, + "id": 738, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 739, + "id": 736, "name": "_aggregatorAddress", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 595, + "referencedDeclaration": 592, "src": "2649:18:1", "typeDescriptions": { "typeIdentifier": "t_address", @@ -4325,11 +4325,11 @@ "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { - "id": 740, + "id": 737, "name": "value", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 698, + "referencedDeclaration": 695, "src": "2671:5:1", "typeDescriptions": { "typeIdentifier": "t_address", @@ -4344,7 +4344,7 @@ }, { "hexValue": "476174657761793a2061676772656761746f72206164647265737320616c726561647920736574", - "id": 742, + "id": 739, "isConstant": false, "isLValue": false, "isPure": true, @@ -4370,7 +4370,7 @@ "typeString": "literal_string \"Gateway: aggregator address already set\"" } ], - "id": 738, + "id": 735, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -4384,7 +4384,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 743, + "id": 740, "isConstant": false, "isLValue": false, "isPure": false, @@ -4400,23 +4400,23 @@ "typeString": "tuple()" } }, - "id": 744, + "id": 741, "nodeType": "ExpressionStatement", "src": "2641:79:1" }, { "expression": { - "id": 747, + "id": 744, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 745, + "id": 742, "name": "_aggregatorAddress", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 595, + "referencedDeclaration": 592, "src": "2725:18:1", "typeDescriptions": { "typeIdentifier": "t_address", @@ -4426,11 +4426,11 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 746, + "id": 743, "name": "value", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 698, + "referencedDeclaration": 695, "src": "2746:5:1", "typeDescriptions": { "typeIdentifier": "t_address", @@ -4443,23 +4443,23 @@ "typeString": "address" } }, - "id": 748, + "id": 745, "nodeType": "ExpressionStatement", "src": "2725:26:1" }, { "expression": { - "id": 751, + "id": 748, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 749, + "id": 746, "name": "updated", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 714, + "referencedDeclaration": 711, "src": "2756:7:1", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -4470,7 +4470,7 @@ "operator": "=", "rightHandSide": { "hexValue": "74727565", - "id": 750, + "id": 747, "isConstant": false, "isLValue": false, "isPure": true, @@ -4490,18 +4490,18 @@ "typeString": "bool" } }, - "id": 752, + "id": 749, "nodeType": "ExpressionStatement", "src": "2756:14:1" } ] } }, - "id": 755, + "id": 752, "nodeType": "IfStatement", "src": "2449:326:1", "trueBody": { - "id": 734, + "id": 731, "nodeType": "Block", "src": "2473:131:1", "statements": [ @@ -4513,17 +4513,17 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 722, + "id": 719, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 720, + "id": 717, "name": "treasuryAddress", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 593, + "referencedDeclaration": 590, "src": "2486:15:1", "typeDescriptions": { "typeIdentifier": "t_address", @@ -4533,11 +4533,11 @@ "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { - "id": 721, + "id": 718, "name": "value", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 698, + "referencedDeclaration": 695, "src": "2505:5:1", "typeDescriptions": { "typeIdentifier": "t_address", @@ -4552,7 +4552,7 @@ }, { "hexValue": "476174657761793a207472656173757279206164647265737320616c726561647920736574", - "id": 723, + "id": 720, "isConstant": false, "isLValue": false, "isPure": true, @@ -4578,7 +4578,7 @@ "typeString": "literal_string \"Gateway: treasury address already set\"" } ], - "id": 719, + "id": 716, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -4592,7 +4592,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 724, + "id": 721, "isConstant": false, "isLValue": false, "isPure": false, @@ -4608,23 +4608,23 @@ "typeString": "tuple()" } }, - "id": 725, + "id": 722, "nodeType": "ExpressionStatement", "src": "2478:74:1" }, { "expression": { - "id": 728, + "id": 725, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 726, + "id": 723, "name": "treasuryAddress", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 593, + "referencedDeclaration": 590, "src": "2557:15:1", "typeDescriptions": { "typeIdentifier": "t_address", @@ -4634,11 +4634,11 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 727, + "id": 724, "name": "value", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 698, + "referencedDeclaration": 695, "src": "2575:5:1", "typeDescriptions": { "typeIdentifier": "t_address", @@ -4651,23 +4651,23 @@ "typeString": "address" } }, - "id": 729, + "id": 726, "nodeType": "ExpressionStatement", "src": "2557:23:1" }, { "expression": { - "id": 732, + "id": 729, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 730, + "id": 727, "name": "updated", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 714, + "referencedDeclaration": 711, "src": "2585:7:1", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -4678,7 +4678,7 @@ "operator": "=", "rightHandSide": { "hexValue": "74727565", - "id": 731, + "id": 728, "isConstant": false, "isLValue": false, "isPure": true, @@ -4698,7 +4698,7 @@ "typeString": "bool" } }, - "id": 733, + "id": 730, "nodeType": "ExpressionStatement", "src": "2585:14:1" } @@ -4707,22 +4707,22 @@ }, { "condition": { - "id": 756, + "id": 753, "name": "updated", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 714, + "referencedDeclaration": 711, "src": "2782:7:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 763, + "id": 760, "nodeType": "IfStatement", "src": "2778:63:1", "trueBody": { - "id": 762, + "id": 759, "nodeType": "Block", "src": "2791:50:1", "statements": [ @@ -4730,11 +4730,11 @@ "eventCall": { "arguments": [ { - "id": 758, + "id": 755, "name": "what", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 696, + "referencedDeclaration": 693, "src": "2824:4:1", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -4742,11 +4742,11 @@ } }, { - "id": 759, + "id": 756, "name": "value", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 698, + "referencedDeclaration": 695, "src": "2830:5:1", "typeDescriptions": { "typeIdentifier": "t_address", @@ -4765,18 +4765,18 @@ "typeString": "address" } ], - "id": 757, + "id": 754, "name": "ProtocolAddressUpdated", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 621, + "referencedDeclaration": 618, "src": "2801:22:1", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_address_$returns$__$", "typeString": "function (bytes32,address)" } }, - "id": 760, + "id": 757, "isConstant": false, "isLValue": false, "isPure": false, @@ -4792,7 +4792,7 @@ "typeString": "tuple()" } }, - "id": 761, + "id": 758, "nodeType": "EmitStatement", "src": "2796:40:1" } @@ -4802,27 +4802,27 @@ ] }, "documentation": { - "id": 694, + "id": 691, "nodeType": "StructuredDocumentation", "src": "2067:224:1", "text": " @dev Updates a protocol address.\n @param what The address type to be updated (treasury or aggregator).\n @param value The new address to be set.\n Requirements:\n - The value must not be a zero address." }, "functionSelector": "40ebc677", - "id": 765, + "id": 762, "implemented": true, "kind": "function", "modifiers": [ { - "id": 701, + "id": 698, "kind": "modifierInvocation", "modifierName": { - "id": 700, + "id": 697, "name": "onlyOwner", "nameLocations": [ "2362:9:1" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 1128, + "referencedDeclaration": 1125, "src": "2362:9:1" }, "nodeType": "ModifierInvocation", @@ -4833,17 +4833,17 @@ "nameLocation": "2302:21:1", "nodeType": "FunctionDefinition", "parameters": { - "id": 699, + "id": 696, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 696, + "id": 693, "mutability": "mutable", "name": "what", "nameLocation": "2332:4:1", "nodeType": "VariableDeclaration", - "scope": 765, + "scope": 762, "src": "2324:12:1", "stateVariable": false, "storageLocation": "default", @@ -4852,7 +4852,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 695, + "id": 692, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "2324:7:1", @@ -4865,12 +4865,12 @@ }, { "constant": false, - "id": 698, + "id": 695, "mutability": "mutable", "name": "value", "nameLocation": "2346:5:1", "nodeType": "VariableDeclaration", - "scope": 765, + "scope": 762, "src": "2338:13:1", "stateVariable": false, "storageLocation": "default", @@ -4879,7 +4879,7 @@ "typeString": "address" }, "typeName": { - "id": 697, + "id": 694, "name": "address", "nodeType": "ElementaryTypeName", "src": "2338:7:1", @@ -4895,19 +4895,19 @@ "src": "2323:29:1" }, "returnParameters": { - "id": 702, + "id": 699, "nodeType": "ParameterList", "parameters": [], "src": "2372:0:1" }, - "scope": 766, + "scope": 763, "src": "2293:551:1", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" } ], - "scope": 767, + "scope": 764, "src": "276:2570:1", "usedErrors": [] } @@ -4920,5 +4920,5 @@ }, "networks": {}, "schemaVersion": "2.0.1", - "updatedAt": "2024-06-20T09:33:52.548Z" + "updatedAt": "2024-06-27T12:24:25.255Z" } \ No newline at end of file diff --git a/build/contracts/IERC20.json b/build/contracts/IERC20.json index 65c2a66..645f4a0 100644 --- a/build/contracts/IERC20.json +++ b/build/contracts/IERC20.json @@ -195,15 +195,15 @@ "absolutePath": "@openzeppelin/contracts/token/ERC20/IERC20.sol", "exportedSymbols": { "IERC20": [ - 2557 + 2554 ] }, - "id": 2558, + "id": 2555, "license": "MIT", "nodeType": "SourceUnit", "nodes": [ { - "id": 2481, + "id": 2478, "literals": [ "solidity", "^", @@ -220,15 +220,15 @@ "contractDependencies": [], "contractKind": "interface", "documentation": { - "id": 2482, + "id": 2479, "nodeType": "StructuredDocumentation", "src": "131:70:11", "text": " @dev Interface of the ERC20 standard as defined in the EIP." }, "fullyImplemented": false, - "id": 2557, + "id": 2554, "linearizedBaseContracts": [ - 2557 + 2554 ], "name": "IERC20", "nameLocation": "212:6:11", @@ -237,29 +237,29 @@ { "anonymous": false, "documentation": { - "id": 2483, + "id": 2480, "nodeType": "StructuredDocumentation", "src": "225:158:11", "text": " @dev Emitted when `value` tokens are moved from one account (`from`) to\n another (`to`).\n Note that `value` may be zero." }, "eventSelector": "ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef", - "id": 2491, + "id": 2488, "name": "Transfer", "nameLocation": "394:8:11", "nodeType": "EventDefinition", "parameters": { - "id": 2490, + "id": 2487, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2485, + "id": 2482, "indexed": true, "mutability": "mutable", "name": "from", "nameLocation": "419:4:11", "nodeType": "VariableDeclaration", - "scope": 2491, + "scope": 2488, "src": "403:20:11", "stateVariable": false, "storageLocation": "default", @@ -268,7 +268,7 @@ "typeString": "address" }, "typeName": { - "id": 2484, + "id": 2481, "name": "address", "nodeType": "ElementaryTypeName", "src": "403:7:11", @@ -282,13 +282,13 @@ }, { "constant": false, - "id": 2487, + "id": 2484, "indexed": true, "mutability": "mutable", "name": "to", "nameLocation": "441:2:11", "nodeType": "VariableDeclaration", - "scope": 2491, + "scope": 2488, "src": "425:18:11", "stateVariable": false, "storageLocation": "default", @@ -297,7 +297,7 @@ "typeString": "address" }, "typeName": { - "id": 2486, + "id": 2483, "name": "address", "nodeType": "ElementaryTypeName", "src": "425:7:11", @@ -311,13 +311,13 @@ }, { "constant": false, - "id": 2489, + "id": 2486, "indexed": false, "mutability": "mutable", "name": "value", "nameLocation": "453:5:11", "nodeType": "VariableDeclaration", - "scope": 2491, + "scope": 2488, "src": "445:13:11", "stateVariable": false, "storageLocation": "default", @@ -326,7 +326,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2488, + "id": 2485, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "445:7:11", @@ -345,29 +345,29 @@ { "anonymous": false, "documentation": { - "id": 2492, + "id": 2489, "nodeType": "StructuredDocumentation", "src": "466:148:11", "text": " @dev Emitted when the allowance of a `spender` for an `owner` is set by\n a call to {approve}. `value` is the new allowance." }, "eventSelector": "8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925", - "id": 2500, + "id": 2497, "name": "Approval", "nameLocation": "625:8:11", "nodeType": "EventDefinition", "parameters": { - "id": 2499, + "id": 2496, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2494, + "id": 2491, "indexed": true, "mutability": "mutable", "name": "owner", "nameLocation": "650:5:11", "nodeType": "VariableDeclaration", - "scope": 2500, + "scope": 2497, "src": "634:21:11", "stateVariable": false, "storageLocation": "default", @@ -376,7 +376,7 @@ "typeString": "address" }, "typeName": { - "id": 2493, + "id": 2490, "name": "address", "nodeType": "ElementaryTypeName", "src": "634:7:11", @@ -390,13 +390,13 @@ }, { "constant": false, - "id": 2496, + "id": 2493, "indexed": true, "mutability": "mutable", "name": "spender", "nameLocation": "673:7:11", "nodeType": "VariableDeclaration", - "scope": 2500, + "scope": 2497, "src": "657:23:11", "stateVariable": false, "storageLocation": "default", @@ -405,7 +405,7 @@ "typeString": "address" }, "typeName": { - "id": 2495, + "id": 2492, "name": "address", "nodeType": "ElementaryTypeName", "src": "657:7:11", @@ -419,13 +419,13 @@ }, { "constant": false, - "id": 2498, + "id": 2495, "indexed": false, "mutability": "mutable", "name": "value", "nameLocation": "690:5:11", "nodeType": "VariableDeclaration", - "scope": 2500, + "scope": 2497, "src": "682:13:11", "stateVariable": false, "storageLocation": "default", @@ -434,7 +434,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2497, + "id": 2494, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "682:7:11", @@ -452,13 +452,13 @@ }, { "documentation": { - "id": 2501, + "id": 2498, "nodeType": "StructuredDocumentation", "src": "703:66:11", "text": " @dev Returns the amount of tokens in existence." }, "functionSelector": "18160ddd", - "id": 2506, + "id": 2503, "implemented": false, "kind": "function", "modifiers": [], @@ -466,23 +466,23 @@ "nameLocation": "783:11:11", "nodeType": "FunctionDefinition", "parameters": { - "id": 2502, + "id": 2499, "nodeType": "ParameterList", "parameters": [], "src": "794:2:11" }, "returnParameters": { - "id": 2505, + "id": 2502, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2504, + "id": 2501, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 2506, + "scope": 2503, "src": "820:7:11", "stateVariable": false, "storageLocation": "default", @@ -491,7 +491,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2503, + "id": 2500, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "820:7:11", @@ -505,7 +505,7 @@ ], "src": "819:9:11" }, - "scope": 2557, + "scope": 2554, "src": "774:55:11", "stateMutability": "view", "virtual": false, @@ -513,13 +513,13 @@ }, { "documentation": { - "id": 2507, + "id": 2504, "nodeType": "StructuredDocumentation", "src": "835:72:11", "text": " @dev Returns the amount of tokens owned by `account`." }, "functionSelector": "70a08231", - "id": 2514, + "id": 2511, "implemented": false, "kind": "function", "modifiers": [], @@ -527,17 +527,17 @@ "nameLocation": "921:9:11", "nodeType": "FunctionDefinition", "parameters": { - "id": 2510, + "id": 2507, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2509, + "id": 2506, "mutability": "mutable", "name": "account", "nameLocation": "939:7:11", "nodeType": "VariableDeclaration", - "scope": 2514, + "scope": 2511, "src": "931:15:11", "stateVariable": false, "storageLocation": "default", @@ -546,7 +546,7 @@ "typeString": "address" }, "typeName": { - "id": 2508, + "id": 2505, "name": "address", "nodeType": "ElementaryTypeName", "src": "931:7:11", @@ -562,17 +562,17 @@ "src": "930:17:11" }, "returnParameters": { - "id": 2513, + "id": 2510, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2512, + "id": 2509, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 2514, + "scope": 2511, "src": "971:7:11", "stateVariable": false, "storageLocation": "default", @@ -581,7 +581,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2511, + "id": 2508, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "971:7:11", @@ -595,7 +595,7 @@ ], "src": "970:9:11" }, - "scope": 2557, + "scope": 2554, "src": "912:68:11", "stateMutability": "view", "virtual": false, @@ -603,13 +603,13 @@ }, { "documentation": { - "id": 2515, + "id": 2512, "nodeType": "StructuredDocumentation", "src": "986:202:11", "text": " @dev Moves `amount` tokens from the caller's account to `to`.\n Returns a boolean value indicating whether the operation succeeded.\n Emits a {Transfer} event." }, "functionSelector": "a9059cbb", - "id": 2524, + "id": 2521, "implemented": false, "kind": "function", "modifiers": [], @@ -617,17 +617,17 @@ "nameLocation": "1202:8:11", "nodeType": "FunctionDefinition", "parameters": { - "id": 2520, + "id": 2517, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2517, + "id": 2514, "mutability": "mutable", "name": "to", "nameLocation": "1219:2:11", "nodeType": "VariableDeclaration", - "scope": 2524, + "scope": 2521, "src": "1211:10:11", "stateVariable": false, "storageLocation": "default", @@ -636,7 +636,7 @@ "typeString": "address" }, "typeName": { - "id": 2516, + "id": 2513, "name": "address", "nodeType": "ElementaryTypeName", "src": "1211:7:11", @@ -650,12 +650,12 @@ }, { "constant": false, - "id": 2519, + "id": 2516, "mutability": "mutable", "name": "amount", "nameLocation": "1231:6:11", "nodeType": "VariableDeclaration", - "scope": 2524, + "scope": 2521, "src": "1223:14:11", "stateVariable": false, "storageLocation": "default", @@ -664,7 +664,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2518, + "id": 2515, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1223:7:11", @@ -679,17 +679,17 @@ "src": "1210:28:11" }, "returnParameters": { - "id": 2523, + "id": 2520, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2522, + "id": 2519, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 2524, + "scope": 2521, "src": "1257:4:11", "stateVariable": false, "storageLocation": "default", @@ -698,7 +698,7 @@ "typeString": "bool" }, "typeName": { - "id": 2521, + "id": 2518, "name": "bool", "nodeType": "ElementaryTypeName", "src": "1257:4:11", @@ -712,7 +712,7 @@ ], "src": "1256:6:11" }, - "scope": 2557, + "scope": 2554, "src": "1193:70:11", "stateMutability": "nonpayable", "virtual": false, @@ -720,13 +720,13 @@ }, { "documentation": { - "id": 2525, + "id": 2522, "nodeType": "StructuredDocumentation", "src": "1269:264:11", "text": " @dev Returns the remaining number of tokens that `spender` will be\n allowed to spend on behalf of `owner` through {transferFrom}. This is\n zero by default.\n This value changes when {approve} or {transferFrom} are called." }, "functionSelector": "dd62ed3e", - "id": 2534, + "id": 2531, "implemented": false, "kind": "function", "modifiers": [], @@ -734,17 +734,17 @@ "nameLocation": "1547:9:11", "nodeType": "FunctionDefinition", "parameters": { - "id": 2530, + "id": 2527, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2527, + "id": 2524, "mutability": "mutable", "name": "owner", "nameLocation": "1565:5:11", "nodeType": "VariableDeclaration", - "scope": 2534, + "scope": 2531, "src": "1557:13:11", "stateVariable": false, "storageLocation": "default", @@ -753,7 +753,7 @@ "typeString": "address" }, "typeName": { - "id": 2526, + "id": 2523, "name": "address", "nodeType": "ElementaryTypeName", "src": "1557:7:11", @@ -767,12 +767,12 @@ }, { "constant": false, - "id": 2529, + "id": 2526, "mutability": "mutable", "name": "spender", "nameLocation": "1580:7:11", "nodeType": "VariableDeclaration", - "scope": 2534, + "scope": 2531, "src": "1572:15:11", "stateVariable": false, "storageLocation": "default", @@ -781,7 +781,7 @@ "typeString": "address" }, "typeName": { - "id": 2528, + "id": 2525, "name": "address", "nodeType": "ElementaryTypeName", "src": "1572:7:11", @@ -797,17 +797,17 @@ "src": "1556:32:11" }, "returnParameters": { - "id": 2533, + "id": 2530, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2532, + "id": 2529, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 2534, + "scope": 2531, "src": "1612:7:11", "stateVariable": false, "storageLocation": "default", @@ -816,7 +816,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2531, + "id": 2528, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1612:7:11", @@ -830,7 +830,7 @@ ], "src": "1611:9:11" }, - "scope": 2557, + "scope": 2554, "src": "1538:83:11", "stateMutability": "view", "virtual": false, @@ -838,13 +838,13 @@ }, { "documentation": { - "id": 2535, + "id": 2532, "nodeType": "StructuredDocumentation", "src": "1627:642:11", "text": " @dev Sets `amount` as the allowance of `spender` over the caller's tokens.\n Returns a boolean value indicating whether the operation succeeded.\n IMPORTANT: Beware that changing an allowance with this method brings the risk\n that someone may use both the old and the new allowance by unfortunate\n transaction ordering. One possible solution to mitigate this race\n condition is to first reduce the spender's allowance to 0 and set the\n desired value afterwards:\n https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729\n Emits an {Approval} event." }, "functionSelector": "095ea7b3", - "id": 2544, + "id": 2541, "implemented": false, "kind": "function", "modifiers": [], @@ -852,17 +852,17 @@ "nameLocation": "2283:7:11", "nodeType": "FunctionDefinition", "parameters": { - "id": 2540, + "id": 2537, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2537, + "id": 2534, "mutability": "mutable", "name": "spender", "nameLocation": "2299:7:11", "nodeType": "VariableDeclaration", - "scope": 2544, + "scope": 2541, "src": "2291:15:11", "stateVariable": false, "storageLocation": "default", @@ -871,7 +871,7 @@ "typeString": "address" }, "typeName": { - "id": 2536, + "id": 2533, "name": "address", "nodeType": "ElementaryTypeName", "src": "2291:7:11", @@ -885,12 +885,12 @@ }, { "constant": false, - "id": 2539, + "id": 2536, "mutability": "mutable", "name": "amount", "nameLocation": "2316:6:11", "nodeType": "VariableDeclaration", - "scope": 2544, + "scope": 2541, "src": "2308:14:11", "stateVariable": false, "storageLocation": "default", @@ -899,7 +899,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2538, + "id": 2535, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2308:7:11", @@ -914,17 +914,17 @@ "src": "2290:33:11" }, "returnParameters": { - "id": 2543, + "id": 2540, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2542, + "id": 2539, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 2544, + "scope": 2541, "src": "2342:4:11", "stateVariable": false, "storageLocation": "default", @@ -933,7 +933,7 @@ "typeString": "bool" }, "typeName": { - "id": 2541, + "id": 2538, "name": "bool", "nodeType": "ElementaryTypeName", "src": "2342:4:11", @@ -947,7 +947,7 @@ ], "src": "2341:6:11" }, - "scope": 2557, + "scope": 2554, "src": "2274:74:11", "stateMutability": "nonpayable", "virtual": false, @@ -955,13 +955,13 @@ }, { "documentation": { - "id": 2545, + "id": 2542, "nodeType": "StructuredDocumentation", "src": "2354:287:11", "text": " @dev Moves `amount` tokens from `from` to `to` using the\n allowance mechanism. `amount` is then deducted from the caller's\n allowance.\n Returns a boolean value indicating whether the operation succeeded.\n Emits a {Transfer} event." }, "functionSelector": "23b872dd", - "id": 2556, + "id": 2553, "implemented": false, "kind": "function", "modifiers": [], @@ -969,17 +969,17 @@ "nameLocation": "2655:12:11", "nodeType": "FunctionDefinition", "parameters": { - "id": 2552, + "id": 2549, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2547, + "id": 2544, "mutability": "mutable", "name": "from", "nameLocation": "2676:4:11", "nodeType": "VariableDeclaration", - "scope": 2556, + "scope": 2553, "src": "2668:12:11", "stateVariable": false, "storageLocation": "default", @@ -988,7 +988,7 @@ "typeString": "address" }, "typeName": { - "id": 2546, + "id": 2543, "name": "address", "nodeType": "ElementaryTypeName", "src": "2668:7:11", @@ -1002,12 +1002,12 @@ }, { "constant": false, - "id": 2549, + "id": 2546, "mutability": "mutable", "name": "to", "nameLocation": "2690:2:11", "nodeType": "VariableDeclaration", - "scope": 2556, + "scope": 2553, "src": "2682:10:11", "stateVariable": false, "storageLocation": "default", @@ -1016,7 +1016,7 @@ "typeString": "address" }, "typeName": { - "id": 2548, + "id": 2545, "name": "address", "nodeType": "ElementaryTypeName", "src": "2682:7:11", @@ -1030,12 +1030,12 @@ }, { "constant": false, - "id": 2551, + "id": 2548, "mutability": "mutable", "name": "amount", "nameLocation": "2702:6:11", "nodeType": "VariableDeclaration", - "scope": 2556, + "scope": 2553, "src": "2694:14:11", "stateVariable": false, "storageLocation": "default", @@ -1044,7 +1044,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2550, + "id": 2547, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2694:7:11", @@ -1059,17 +1059,17 @@ "src": "2667:42:11" }, "returnParameters": { - "id": 2555, + "id": 2552, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2554, + "id": 2551, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 2556, + "scope": 2553, "src": "2728:4:11", "stateVariable": false, "storageLocation": "default", @@ -1078,7 +1078,7 @@ "typeString": "bool" }, "typeName": { - "id": 2553, + "id": 2550, "name": "bool", "nodeType": "ElementaryTypeName", "src": "2728:4:11", @@ -1092,14 +1092,14 @@ ], "src": "2727:6:11" }, - "scope": 2557, + "scope": 2554, "src": "2646:88:11", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" } ], - "scope": 2558, + "scope": 2555, "src": "202:2534:11", "usedErrors": [] } @@ -1110,15 +1110,15 @@ "absolutePath": "@openzeppelin/contracts/token/ERC20/IERC20.sol", "exportedSymbols": { "IERC20": [ - 2557 + 2554 ] }, - "id": 2558, + "id": 2555, "license": "MIT", "nodeType": "SourceUnit", "nodes": [ { - "id": 2481, + "id": 2478, "literals": [ "solidity", "^", @@ -1135,15 +1135,15 @@ "contractDependencies": [], "contractKind": "interface", "documentation": { - "id": 2482, + "id": 2479, "nodeType": "StructuredDocumentation", "src": "131:70:11", "text": " @dev Interface of the ERC20 standard as defined in the EIP." }, "fullyImplemented": false, - "id": 2557, + "id": 2554, "linearizedBaseContracts": [ - 2557 + 2554 ], "name": "IERC20", "nameLocation": "212:6:11", @@ -1152,29 +1152,29 @@ { "anonymous": false, "documentation": { - "id": 2483, + "id": 2480, "nodeType": "StructuredDocumentation", "src": "225:158:11", "text": " @dev Emitted when `value` tokens are moved from one account (`from`) to\n another (`to`).\n Note that `value` may be zero." }, "eventSelector": "ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef", - "id": 2491, + "id": 2488, "name": "Transfer", "nameLocation": "394:8:11", "nodeType": "EventDefinition", "parameters": { - "id": 2490, + "id": 2487, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2485, + "id": 2482, "indexed": true, "mutability": "mutable", "name": "from", "nameLocation": "419:4:11", "nodeType": "VariableDeclaration", - "scope": 2491, + "scope": 2488, "src": "403:20:11", "stateVariable": false, "storageLocation": "default", @@ -1183,7 +1183,7 @@ "typeString": "address" }, "typeName": { - "id": 2484, + "id": 2481, "name": "address", "nodeType": "ElementaryTypeName", "src": "403:7:11", @@ -1197,13 +1197,13 @@ }, { "constant": false, - "id": 2487, + "id": 2484, "indexed": true, "mutability": "mutable", "name": "to", "nameLocation": "441:2:11", "nodeType": "VariableDeclaration", - "scope": 2491, + "scope": 2488, "src": "425:18:11", "stateVariable": false, "storageLocation": "default", @@ -1212,7 +1212,7 @@ "typeString": "address" }, "typeName": { - "id": 2486, + "id": 2483, "name": "address", "nodeType": "ElementaryTypeName", "src": "425:7:11", @@ -1226,13 +1226,13 @@ }, { "constant": false, - "id": 2489, + "id": 2486, "indexed": false, "mutability": "mutable", "name": "value", "nameLocation": "453:5:11", "nodeType": "VariableDeclaration", - "scope": 2491, + "scope": 2488, "src": "445:13:11", "stateVariable": false, "storageLocation": "default", @@ -1241,7 +1241,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2488, + "id": 2485, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "445:7:11", @@ -1260,29 +1260,29 @@ { "anonymous": false, "documentation": { - "id": 2492, + "id": 2489, "nodeType": "StructuredDocumentation", "src": "466:148:11", "text": " @dev Emitted when the allowance of a `spender` for an `owner` is set by\n a call to {approve}. `value` is the new allowance." }, "eventSelector": "8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925", - "id": 2500, + "id": 2497, "name": "Approval", "nameLocation": "625:8:11", "nodeType": "EventDefinition", "parameters": { - "id": 2499, + "id": 2496, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2494, + "id": 2491, "indexed": true, "mutability": "mutable", "name": "owner", "nameLocation": "650:5:11", "nodeType": "VariableDeclaration", - "scope": 2500, + "scope": 2497, "src": "634:21:11", "stateVariable": false, "storageLocation": "default", @@ -1291,7 +1291,7 @@ "typeString": "address" }, "typeName": { - "id": 2493, + "id": 2490, "name": "address", "nodeType": "ElementaryTypeName", "src": "634:7:11", @@ -1305,13 +1305,13 @@ }, { "constant": false, - "id": 2496, + "id": 2493, "indexed": true, "mutability": "mutable", "name": "spender", "nameLocation": "673:7:11", "nodeType": "VariableDeclaration", - "scope": 2500, + "scope": 2497, "src": "657:23:11", "stateVariable": false, "storageLocation": "default", @@ -1320,7 +1320,7 @@ "typeString": "address" }, "typeName": { - "id": 2495, + "id": 2492, "name": "address", "nodeType": "ElementaryTypeName", "src": "657:7:11", @@ -1334,13 +1334,13 @@ }, { "constant": false, - "id": 2498, + "id": 2495, "indexed": false, "mutability": "mutable", "name": "value", "nameLocation": "690:5:11", "nodeType": "VariableDeclaration", - "scope": 2500, + "scope": 2497, "src": "682:13:11", "stateVariable": false, "storageLocation": "default", @@ -1349,7 +1349,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2497, + "id": 2494, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "682:7:11", @@ -1367,13 +1367,13 @@ }, { "documentation": { - "id": 2501, + "id": 2498, "nodeType": "StructuredDocumentation", "src": "703:66:11", "text": " @dev Returns the amount of tokens in existence." }, "functionSelector": "18160ddd", - "id": 2506, + "id": 2503, "implemented": false, "kind": "function", "modifiers": [], @@ -1381,23 +1381,23 @@ "nameLocation": "783:11:11", "nodeType": "FunctionDefinition", "parameters": { - "id": 2502, + "id": 2499, "nodeType": "ParameterList", "parameters": [], "src": "794:2:11" }, "returnParameters": { - "id": 2505, + "id": 2502, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2504, + "id": 2501, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 2506, + "scope": 2503, "src": "820:7:11", "stateVariable": false, "storageLocation": "default", @@ -1406,7 +1406,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2503, + "id": 2500, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "820:7:11", @@ -1420,7 +1420,7 @@ ], "src": "819:9:11" }, - "scope": 2557, + "scope": 2554, "src": "774:55:11", "stateMutability": "view", "virtual": false, @@ -1428,13 +1428,13 @@ }, { "documentation": { - "id": 2507, + "id": 2504, "nodeType": "StructuredDocumentation", "src": "835:72:11", "text": " @dev Returns the amount of tokens owned by `account`." }, "functionSelector": "70a08231", - "id": 2514, + "id": 2511, "implemented": false, "kind": "function", "modifiers": [], @@ -1442,17 +1442,17 @@ "nameLocation": "921:9:11", "nodeType": "FunctionDefinition", "parameters": { - "id": 2510, + "id": 2507, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2509, + "id": 2506, "mutability": "mutable", "name": "account", "nameLocation": "939:7:11", "nodeType": "VariableDeclaration", - "scope": 2514, + "scope": 2511, "src": "931:15:11", "stateVariable": false, "storageLocation": "default", @@ -1461,7 +1461,7 @@ "typeString": "address" }, "typeName": { - "id": 2508, + "id": 2505, "name": "address", "nodeType": "ElementaryTypeName", "src": "931:7:11", @@ -1477,17 +1477,17 @@ "src": "930:17:11" }, "returnParameters": { - "id": 2513, + "id": 2510, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2512, + "id": 2509, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 2514, + "scope": 2511, "src": "971:7:11", "stateVariable": false, "storageLocation": "default", @@ -1496,7 +1496,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2511, + "id": 2508, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "971:7:11", @@ -1510,7 +1510,7 @@ ], "src": "970:9:11" }, - "scope": 2557, + "scope": 2554, "src": "912:68:11", "stateMutability": "view", "virtual": false, @@ -1518,13 +1518,13 @@ }, { "documentation": { - "id": 2515, + "id": 2512, "nodeType": "StructuredDocumentation", "src": "986:202:11", "text": " @dev Moves `amount` tokens from the caller's account to `to`.\n Returns a boolean value indicating whether the operation succeeded.\n Emits a {Transfer} event." }, "functionSelector": "a9059cbb", - "id": 2524, + "id": 2521, "implemented": false, "kind": "function", "modifiers": [], @@ -1532,17 +1532,17 @@ "nameLocation": "1202:8:11", "nodeType": "FunctionDefinition", "parameters": { - "id": 2520, + "id": 2517, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2517, + "id": 2514, "mutability": "mutable", "name": "to", "nameLocation": "1219:2:11", "nodeType": "VariableDeclaration", - "scope": 2524, + "scope": 2521, "src": "1211:10:11", "stateVariable": false, "storageLocation": "default", @@ -1551,7 +1551,7 @@ "typeString": "address" }, "typeName": { - "id": 2516, + "id": 2513, "name": "address", "nodeType": "ElementaryTypeName", "src": "1211:7:11", @@ -1565,12 +1565,12 @@ }, { "constant": false, - "id": 2519, + "id": 2516, "mutability": "mutable", "name": "amount", "nameLocation": "1231:6:11", "nodeType": "VariableDeclaration", - "scope": 2524, + "scope": 2521, "src": "1223:14:11", "stateVariable": false, "storageLocation": "default", @@ -1579,7 +1579,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2518, + "id": 2515, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1223:7:11", @@ -1594,17 +1594,17 @@ "src": "1210:28:11" }, "returnParameters": { - "id": 2523, + "id": 2520, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2522, + "id": 2519, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 2524, + "scope": 2521, "src": "1257:4:11", "stateVariable": false, "storageLocation": "default", @@ -1613,7 +1613,7 @@ "typeString": "bool" }, "typeName": { - "id": 2521, + "id": 2518, "name": "bool", "nodeType": "ElementaryTypeName", "src": "1257:4:11", @@ -1627,7 +1627,7 @@ ], "src": "1256:6:11" }, - "scope": 2557, + "scope": 2554, "src": "1193:70:11", "stateMutability": "nonpayable", "virtual": false, @@ -1635,13 +1635,13 @@ }, { "documentation": { - "id": 2525, + "id": 2522, "nodeType": "StructuredDocumentation", "src": "1269:264:11", "text": " @dev Returns the remaining number of tokens that `spender` will be\n allowed to spend on behalf of `owner` through {transferFrom}. This is\n zero by default.\n This value changes when {approve} or {transferFrom} are called." }, "functionSelector": "dd62ed3e", - "id": 2534, + "id": 2531, "implemented": false, "kind": "function", "modifiers": [], @@ -1649,17 +1649,17 @@ "nameLocation": "1547:9:11", "nodeType": "FunctionDefinition", "parameters": { - "id": 2530, + "id": 2527, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2527, + "id": 2524, "mutability": "mutable", "name": "owner", "nameLocation": "1565:5:11", "nodeType": "VariableDeclaration", - "scope": 2534, + "scope": 2531, "src": "1557:13:11", "stateVariable": false, "storageLocation": "default", @@ -1668,7 +1668,7 @@ "typeString": "address" }, "typeName": { - "id": 2526, + "id": 2523, "name": "address", "nodeType": "ElementaryTypeName", "src": "1557:7:11", @@ -1682,12 +1682,12 @@ }, { "constant": false, - "id": 2529, + "id": 2526, "mutability": "mutable", "name": "spender", "nameLocation": "1580:7:11", "nodeType": "VariableDeclaration", - "scope": 2534, + "scope": 2531, "src": "1572:15:11", "stateVariable": false, "storageLocation": "default", @@ -1696,7 +1696,7 @@ "typeString": "address" }, "typeName": { - "id": 2528, + "id": 2525, "name": "address", "nodeType": "ElementaryTypeName", "src": "1572:7:11", @@ -1712,17 +1712,17 @@ "src": "1556:32:11" }, "returnParameters": { - "id": 2533, + "id": 2530, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2532, + "id": 2529, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 2534, + "scope": 2531, "src": "1612:7:11", "stateVariable": false, "storageLocation": "default", @@ -1731,7 +1731,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2531, + "id": 2528, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1612:7:11", @@ -1745,7 +1745,7 @@ ], "src": "1611:9:11" }, - "scope": 2557, + "scope": 2554, "src": "1538:83:11", "stateMutability": "view", "virtual": false, @@ -1753,13 +1753,13 @@ }, { "documentation": { - "id": 2535, + "id": 2532, "nodeType": "StructuredDocumentation", "src": "1627:642:11", "text": " @dev Sets `amount` as the allowance of `spender` over the caller's tokens.\n Returns a boolean value indicating whether the operation succeeded.\n IMPORTANT: Beware that changing an allowance with this method brings the risk\n that someone may use both the old and the new allowance by unfortunate\n transaction ordering. One possible solution to mitigate this race\n condition is to first reduce the spender's allowance to 0 and set the\n desired value afterwards:\n https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729\n Emits an {Approval} event." }, "functionSelector": "095ea7b3", - "id": 2544, + "id": 2541, "implemented": false, "kind": "function", "modifiers": [], @@ -1767,17 +1767,17 @@ "nameLocation": "2283:7:11", "nodeType": "FunctionDefinition", "parameters": { - "id": 2540, + "id": 2537, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2537, + "id": 2534, "mutability": "mutable", "name": "spender", "nameLocation": "2299:7:11", "nodeType": "VariableDeclaration", - "scope": 2544, + "scope": 2541, "src": "2291:15:11", "stateVariable": false, "storageLocation": "default", @@ -1786,7 +1786,7 @@ "typeString": "address" }, "typeName": { - "id": 2536, + "id": 2533, "name": "address", "nodeType": "ElementaryTypeName", "src": "2291:7:11", @@ -1800,12 +1800,12 @@ }, { "constant": false, - "id": 2539, + "id": 2536, "mutability": "mutable", "name": "amount", "nameLocation": "2316:6:11", "nodeType": "VariableDeclaration", - "scope": 2544, + "scope": 2541, "src": "2308:14:11", "stateVariable": false, "storageLocation": "default", @@ -1814,7 +1814,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2538, + "id": 2535, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2308:7:11", @@ -1829,17 +1829,17 @@ "src": "2290:33:11" }, "returnParameters": { - "id": 2543, + "id": 2540, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2542, + "id": 2539, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 2544, + "scope": 2541, "src": "2342:4:11", "stateVariable": false, "storageLocation": "default", @@ -1848,7 +1848,7 @@ "typeString": "bool" }, "typeName": { - "id": 2541, + "id": 2538, "name": "bool", "nodeType": "ElementaryTypeName", "src": "2342:4:11", @@ -1862,7 +1862,7 @@ ], "src": "2341:6:11" }, - "scope": 2557, + "scope": 2554, "src": "2274:74:11", "stateMutability": "nonpayable", "virtual": false, @@ -1870,13 +1870,13 @@ }, { "documentation": { - "id": 2545, + "id": 2542, "nodeType": "StructuredDocumentation", "src": "2354:287:11", "text": " @dev Moves `amount` tokens from `from` to `to` using the\n allowance mechanism. `amount` is then deducted from the caller's\n allowance.\n Returns a boolean value indicating whether the operation succeeded.\n Emits a {Transfer} event." }, "functionSelector": "23b872dd", - "id": 2556, + "id": 2553, "implemented": false, "kind": "function", "modifiers": [], @@ -1884,17 +1884,17 @@ "nameLocation": "2655:12:11", "nodeType": "FunctionDefinition", "parameters": { - "id": 2552, + "id": 2549, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2547, + "id": 2544, "mutability": "mutable", "name": "from", "nameLocation": "2676:4:11", "nodeType": "VariableDeclaration", - "scope": 2556, + "scope": 2553, "src": "2668:12:11", "stateVariable": false, "storageLocation": "default", @@ -1903,7 +1903,7 @@ "typeString": "address" }, "typeName": { - "id": 2546, + "id": 2543, "name": "address", "nodeType": "ElementaryTypeName", "src": "2668:7:11", @@ -1917,12 +1917,12 @@ }, { "constant": false, - "id": 2549, + "id": 2546, "mutability": "mutable", "name": "to", "nameLocation": "2690:2:11", "nodeType": "VariableDeclaration", - "scope": 2556, + "scope": 2553, "src": "2682:10:11", "stateVariable": false, "storageLocation": "default", @@ -1931,7 +1931,7 @@ "typeString": "address" }, "typeName": { - "id": 2548, + "id": 2545, "name": "address", "nodeType": "ElementaryTypeName", "src": "2682:7:11", @@ -1945,12 +1945,12 @@ }, { "constant": false, - "id": 2551, + "id": 2548, "mutability": "mutable", "name": "amount", "nameLocation": "2702:6:11", "nodeType": "VariableDeclaration", - "scope": 2556, + "scope": 2553, "src": "2694:14:11", "stateVariable": false, "storageLocation": "default", @@ -1959,7 +1959,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2550, + "id": 2547, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2694:7:11", @@ -1974,17 +1974,17 @@ "src": "2667:42:11" }, "returnParameters": { - "id": 2555, + "id": 2552, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2554, + "id": 2551, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 2556, + "scope": 2553, "src": "2728:4:11", "stateVariable": false, "storageLocation": "default", @@ -1993,7 +1993,7 @@ "typeString": "bool" }, "typeName": { - "id": 2553, + "id": 2550, "name": "bool", "nodeType": "ElementaryTypeName", "src": "2728:4:11", @@ -2007,14 +2007,14 @@ ], "src": "2727:6:11" }, - "scope": 2557, + "scope": 2554, "src": "2646:88:11", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" } ], - "scope": 2558, + "scope": 2555, "src": "202:2534:11", "usedErrors": [] } @@ -2027,5 +2027,5 @@ }, "networks": {}, "schemaVersion": "2.0.1", - "updatedAt": "2024-06-20T09:33:52.561Z" + "updatedAt": "2024-06-27T12:24:25.258Z" } \ No newline at end of file diff --git a/build/contracts/IERC20Metadata.json b/build/contracts/IERC20Metadata.json index 9e635b0..274e697 100644 --- a/build/contracts/IERC20Metadata.json +++ b/build/contracts/IERC20Metadata.json @@ -234,18 +234,18 @@ "absolutePath": "@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol", "exportedSymbols": { "IERC20": [ - 2557 + 2554 ], "IERC20Metadata": [ - 2582 + 2579 ] }, - "id": 2583, + "id": 2580, "license": "MIT", "nodeType": "SourceUnit", "nodes": [ { - "id": 2559, + "id": 2556, "literals": [ "solidity", "^", @@ -258,11 +258,11 @@ { "absolutePath": "@openzeppelin/contracts/token/ERC20/IERC20.sol", "file": "../IERC20.sol", - "id": 2560, + "id": 2557, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", - "scope": 2583, - "sourceUnit": 2558, + "scope": 2580, + "sourceUnit": 2555, "src": "135:23:12", "symbolAliases": [], "unitAlias": "" @@ -272,16 +272,16 @@ "baseContracts": [ { "baseName": { - "id": 2562, + "id": 2559, "name": "IERC20", "nameLocations": [ "305:6:12" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 2557, + "referencedDeclaration": 2554, "src": "305:6:12" }, - "id": 2563, + "id": 2560, "nodeType": "InheritanceSpecifier", "src": "305:6:12" } @@ -290,16 +290,16 @@ "contractDependencies": [], "contractKind": "interface", "documentation": { - "id": 2561, + "id": 2558, "nodeType": "StructuredDocumentation", "src": "160:116:12", "text": " @dev Interface for the optional metadata functions from the ERC20 standard.\n _Available since v4.1._" }, "fullyImplemented": false, - "id": 2582, + "id": 2579, "linearizedBaseContracts": [ - 2582, - 2557 + 2579, + 2554 ], "name": "IERC20Metadata", "nameLocation": "287:14:12", @@ -307,13 +307,13 @@ "nodes": [ { "documentation": { - "id": 2564, + "id": 2561, "nodeType": "StructuredDocumentation", "src": "318:54:12", "text": " @dev Returns the name of the token." }, "functionSelector": "06fdde03", - "id": 2569, + "id": 2566, "implemented": false, "kind": "function", "modifiers": [], @@ -321,23 +321,23 @@ "nameLocation": "386:4:12", "nodeType": "FunctionDefinition", "parameters": { - "id": 2565, + "id": 2562, "nodeType": "ParameterList", "parameters": [], "src": "390:2:12" }, "returnParameters": { - "id": 2568, + "id": 2565, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2567, + "id": 2564, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 2569, + "scope": 2566, "src": "416:13:12", "stateVariable": false, "storageLocation": "memory", @@ -346,7 +346,7 @@ "typeString": "string" }, "typeName": { - "id": 2566, + "id": 2563, "name": "string", "nodeType": "ElementaryTypeName", "src": "416:6:12", @@ -360,7 +360,7 @@ ], "src": "415:15:12" }, - "scope": 2582, + "scope": 2579, "src": "377:54:12", "stateMutability": "view", "virtual": false, @@ -368,13 +368,13 @@ }, { "documentation": { - "id": 2570, + "id": 2567, "nodeType": "StructuredDocumentation", "src": "437:56:12", "text": " @dev Returns the symbol of the token." }, "functionSelector": "95d89b41", - "id": 2575, + "id": 2572, "implemented": false, "kind": "function", "modifiers": [], @@ -382,23 +382,23 @@ "nameLocation": "507:6:12", "nodeType": "FunctionDefinition", "parameters": { - "id": 2571, + "id": 2568, "nodeType": "ParameterList", "parameters": [], "src": "513:2:12" }, "returnParameters": { - "id": 2574, + "id": 2571, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2573, + "id": 2570, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 2575, + "scope": 2572, "src": "539:13:12", "stateVariable": false, "storageLocation": "memory", @@ -407,7 +407,7 @@ "typeString": "string" }, "typeName": { - "id": 2572, + "id": 2569, "name": "string", "nodeType": "ElementaryTypeName", "src": "539:6:12", @@ -421,7 +421,7 @@ ], "src": "538:15:12" }, - "scope": 2582, + "scope": 2579, "src": "498:56:12", "stateMutability": "view", "virtual": false, @@ -429,13 +429,13 @@ }, { "documentation": { - "id": 2576, + "id": 2573, "nodeType": "StructuredDocumentation", "src": "560:65:12", "text": " @dev Returns the decimals places of the token." }, "functionSelector": "313ce567", - "id": 2581, + "id": 2578, "implemented": false, "kind": "function", "modifiers": [], @@ -443,23 +443,23 @@ "nameLocation": "639:8:12", "nodeType": "FunctionDefinition", "parameters": { - "id": 2577, + "id": 2574, "nodeType": "ParameterList", "parameters": [], "src": "647:2:12" }, "returnParameters": { - "id": 2580, + "id": 2577, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2579, + "id": 2576, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 2581, + "scope": 2578, "src": "673:5:12", "stateVariable": false, "storageLocation": "default", @@ -468,7 +468,7 @@ "typeString": "uint8" }, "typeName": { - "id": 2578, + "id": 2575, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "673:5:12", @@ -482,14 +482,14 @@ ], "src": "672:7:12" }, - "scope": 2582, + "scope": 2579, "src": "630:50:12", "stateMutability": "view", "virtual": false, "visibility": "external" } ], - "scope": 2583, + "scope": 2580, "src": "277:405:12", "usedErrors": [] } @@ -500,18 +500,18 @@ "absolutePath": "@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol", "exportedSymbols": { "IERC20": [ - 2557 + 2554 ], "IERC20Metadata": [ - 2582 + 2579 ] }, - "id": 2583, + "id": 2580, "license": "MIT", "nodeType": "SourceUnit", "nodes": [ { - "id": 2559, + "id": 2556, "literals": [ "solidity", "^", @@ -524,11 +524,11 @@ { "absolutePath": "@openzeppelin/contracts/token/ERC20/IERC20.sol", "file": "../IERC20.sol", - "id": 2560, + "id": 2557, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", - "scope": 2583, - "sourceUnit": 2558, + "scope": 2580, + "sourceUnit": 2555, "src": "135:23:12", "symbolAliases": [], "unitAlias": "" @@ -538,16 +538,16 @@ "baseContracts": [ { "baseName": { - "id": 2562, + "id": 2559, "name": "IERC20", "nameLocations": [ "305:6:12" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 2557, + "referencedDeclaration": 2554, "src": "305:6:12" }, - "id": 2563, + "id": 2560, "nodeType": "InheritanceSpecifier", "src": "305:6:12" } @@ -556,16 +556,16 @@ "contractDependencies": [], "contractKind": "interface", "documentation": { - "id": 2561, + "id": 2558, "nodeType": "StructuredDocumentation", "src": "160:116:12", "text": " @dev Interface for the optional metadata functions from the ERC20 standard.\n _Available since v4.1._" }, "fullyImplemented": false, - "id": 2582, + "id": 2579, "linearizedBaseContracts": [ - 2582, - 2557 + 2579, + 2554 ], "name": "IERC20Metadata", "nameLocation": "287:14:12", @@ -573,13 +573,13 @@ "nodes": [ { "documentation": { - "id": 2564, + "id": 2561, "nodeType": "StructuredDocumentation", "src": "318:54:12", "text": " @dev Returns the name of the token." }, "functionSelector": "06fdde03", - "id": 2569, + "id": 2566, "implemented": false, "kind": "function", "modifiers": [], @@ -587,23 +587,23 @@ "nameLocation": "386:4:12", "nodeType": "FunctionDefinition", "parameters": { - "id": 2565, + "id": 2562, "nodeType": "ParameterList", "parameters": [], "src": "390:2:12" }, "returnParameters": { - "id": 2568, + "id": 2565, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2567, + "id": 2564, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 2569, + "scope": 2566, "src": "416:13:12", "stateVariable": false, "storageLocation": "memory", @@ -612,7 +612,7 @@ "typeString": "string" }, "typeName": { - "id": 2566, + "id": 2563, "name": "string", "nodeType": "ElementaryTypeName", "src": "416:6:12", @@ -626,7 +626,7 @@ ], "src": "415:15:12" }, - "scope": 2582, + "scope": 2579, "src": "377:54:12", "stateMutability": "view", "virtual": false, @@ -634,13 +634,13 @@ }, { "documentation": { - "id": 2570, + "id": 2567, "nodeType": "StructuredDocumentation", "src": "437:56:12", "text": " @dev Returns the symbol of the token." }, "functionSelector": "95d89b41", - "id": 2575, + "id": 2572, "implemented": false, "kind": "function", "modifiers": [], @@ -648,23 +648,23 @@ "nameLocation": "507:6:12", "nodeType": "FunctionDefinition", "parameters": { - "id": 2571, + "id": 2568, "nodeType": "ParameterList", "parameters": [], "src": "513:2:12" }, "returnParameters": { - "id": 2574, + "id": 2571, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2573, + "id": 2570, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 2575, + "scope": 2572, "src": "539:13:12", "stateVariable": false, "storageLocation": "memory", @@ -673,7 +673,7 @@ "typeString": "string" }, "typeName": { - "id": 2572, + "id": 2569, "name": "string", "nodeType": "ElementaryTypeName", "src": "539:6:12", @@ -687,7 +687,7 @@ ], "src": "538:15:12" }, - "scope": 2582, + "scope": 2579, "src": "498:56:12", "stateMutability": "view", "virtual": false, @@ -695,13 +695,13 @@ }, { "documentation": { - "id": 2576, + "id": 2573, "nodeType": "StructuredDocumentation", "src": "560:65:12", "text": " @dev Returns the decimals places of the token." }, "functionSelector": "313ce567", - "id": 2581, + "id": 2578, "implemented": false, "kind": "function", "modifiers": [], @@ -709,23 +709,23 @@ "nameLocation": "639:8:12", "nodeType": "FunctionDefinition", "parameters": { - "id": 2577, + "id": 2574, "nodeType": "ParameterList", "parameters": [], "src": "647:2:12" }, "returnParameters": { - "id": 2580, + "id": 2577, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2579, + "id": 2576, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 2581, + "scope": 2578, "src": "673:5:12", "stateVariable": false, "storageLocation": "default", @@ -734,7 +734,7 @@ "typeString": "uint8" }, "typeName": { - "id": 2578, + "id": 2575, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "673:5:12", @@ -748,14 +748,14 @@ ], "src": "672:7:12" }, - "scope": 2582, + "scope": 2579, "src": "630:50:12", "stateMutability": "view", "virtual": false, "visibility": "external" } ], - "scope": 2583, + "scope": 2580, "src": "277:405:12", "usedErrors": [] } @@ -768,5 +768,5 @@ }, "networks": {}, "schemaVersion": "2.0.1", - "updatedAt": "2024-06-20T09:33:52.558Z" + "updatedAt": "2024-06-27T12:24:25.258Z" } \ No newline at end of file diff --git a/build/contracts/IGateway.json b/build/contracts/IGateway.json index 4658197..339e6b1 100644 --- a/build/contracts/IGateway.json +++ b/build/contracts/IGateway.json @@ -340,23 +340,23 @@ "sourceMap": "", "deployedSourceMap": "", "source": "// SPDX-License-Identifier: UNLICENSED\npragma solidity ^0.8.18;\n\nimport {IERC20} from '@openzeppelin/contracts/token/ERC20/IERC20.sol';\n\n/**\n * @title IGateway\n * @notice Interface for the Gateway contract.\n */\ninterface IGateway {\n\t/* ##################################################################\n EVENTS\n ################################################################## */\n\t/**\n\t * @dev Emitted when a deposit is made.\n\t * @param sender The address of the sender.\n\t * @param token The address of the deposited token.\n\t * @param amount The amount of the deposit.\n\t * @param orderId The ID of the order.\n\t * @param rate The rate at which the deposit is made.\n\t * @param messageHash The hash of the message.\n\t */\n\tevent OrderCreated(\n\t\taddress indexed sender,\n\t\taddress indexed token,\n\t\tuint256 indexed amount,\n\t\tuint256 protocolFee,\n\t\tbytes32 orderId,\n\t\tuint256 rate,\n\t\tstring messageHash\n\t);\n\n\t/**\n\t * @dev Emitted when an aggregator settles a transaction.\n\t * @param splitOrderId The ID of the split order.\n\t * @param orderId The ID of the order.\n\t * @param liquidityProvider The address of the liquidity provider.\n\t * @param settlePercent The percentage at which the transaction is settled.\n\t */\n\tevent OrderSettled(\n\t\tbytes32 splitOrderId,\n\t\tbytes32 indexed orderId,\n\t\taddress indexed liquidityProvider,\n\t\tuint96 settlePercent\n\t);\n\n\t/**\n\t * @dev Emitted when an aggregator refunds a transaction.\n\t * @param fee The fee deducted from the refund amount.\n\t * @param orderId The ID of the order.\n\t */\n\tevent OrderRefunded(uint256 fee, bytes32 indexed orderId);\n\n\t/**\n\t * @dev Emitted when the sender's fee is transferred.\n\t * @param sender The address of the sender.\n\t * @param amount The amount of the fee transferred.\n\t */\n\tevent SenderFeeTransferred(address indexed sender, uint256 indexed amount);\n\n\t/* ##################################################################\n STRUCTS\n ################################################################## */\n\t/**\n\t * @dev Struct representing an order.\n\t * @param sender The address of the sender.\n\t * @param token The address of the token.\n\t * @param senderFeeRecipient The address of the sender fee recipient.\n\t * @param senderFee The fee to be paid to the sender fee recipient.\n\t * @param protocolFee The protocol fee to be paid.\n\t * @param isFulfilled Whether the order is fulfilled.\n\t * @param isRefunded Whether the order is refunded.\n\t * @param refundAddress The address to which the refund is made.\n\t * @param currentBPS The current basis points.\n\t * @param amount The amount of the order.\n\t */\n\tstruct Order {\n\t\taddress sender;\n\t\taddress token;\n\t\taddress senderFeeRecipient;\n\t\tuint256 senderFee;\n\t\tuint256 protocolFee;\n\t\tbool isFulfilled;\n\t\tbool isRefunded;\n\t\taddress refundAddress;\n\t\tuint96 currentBPS;\n\t\tuint256 amount;\n\t}\n\n\t/* ##################################################################\n EXTERNAL CALLS\n ################################################################## */\n\t/**\n\t * @notice Locks the sender's amount of token into Gateway.\n\t * @dev Requirements:\n\t * - `msg.sender` must approve Gateway contract on `_token` of at least `amount` before function call.\n\t * - `_token` must be an acceptable token. See {isTokenSupported}.\n\t * - `amount` must be greater than minimum.\n\t * - `_refundAddress` refund address must not be zero address.\n\t * @param _token The address of the token.\n\t * @param _amount The amount in the decimal of `_token` to be locked.\n\t * @param _rate The rate at which the sender intends to sell `_amount` of `_token`.\n\t * @param _senderFeeRecipient The address that will receive `_senderFee` in `_token`.\n\t * @param _senderFee The amount in the decimal of `_token` that will be paid to `_senderFeeRecipient`.\n\t * @param _refundAddress The address that will receive `_amount` in `_token` when there is a need to refund.\n\t * @param messageHash The hash of the message.\n\t * @return _orderId The ID of the order.\n\t */\n\tfunction createOrder(\n\t\taddress _token,\n\t\tuint256 _amount,\n\t\tuint96 _rate,\n\t\taddress _senderFeeRecipient,\n\t\tuint256 _senderFee,\n\t\taddress _refundAddress,\n\t\tstring calldata messageHash\n\t) external returns (bytes32 _orderId);\n\n\t/**\n\t * @notice Settles a transaction and distributes rewards accordingly.\n\t * @param _splitOrderId The ID of the split order.\n\t * @param _orderId The ID of the transaction.\n\t * @param _liquidityProvider The address of the liquidity provider.\n\t * @param _settlePercent The rate at which the transaction is settled.\n\t * @return bool the settlement is successful.\n\t */\n\tfunction settle(\n\t\tbytes32 _splitOrderId,\n\t\tbytes32 _orderId,\n\t\taddress _liquidityProvider,\n\t\tuint64 _settlePercent\n\t) external returns (bool);\n\n\t/**\n\t * @notice Refunds to the specified refundable address.\n\t * @dev Requirements:\n\t * - Only aggregators can call this function.\n\t * @param _fee The amount to be deducted from the amount to be refunded.\n\t * @param _orderId The ID of the transaction.\n\t * @return bool the refund is successful.\n\t */\n\tfunction refund(uint256 _fee, bytes32 _orderId) external returns (bool);\n\n\t/**\n\t * @notice Checks if a token is supported by Gateway.\n\t * @param _token The address of the token to check.\n\t * @return bool the token is supported.\n\t */\n\tfunction isTokenSupported(address _token) external view returns (bool);\n\n\t/**\n\t * @notice Gets the details of an order.\n\t * @param _orderId The ID of the order.\n\t * @return Order The order details.\n\t */\n\tfunction getOrderInfo(bytes32 _orderId) external view returns (Order memory);\n\n\t/**\n\t * @notice Gets the fee details of Gateway.\n\t * @return protocolReward The protocol reward amount.\n\t * @return max_bps The maximum basis points.\n\t */\n\tfunction getFeeDetails() external view returns (uint64 protocolReward, uint256 max_bps);\n}\n", - "sourcePath": "/Users/chibie/paycrest/contracts/contracts/interfaces/IGateway.sol", + "sourcePath": "/Users/encryption/Downloads/projects/paycrest/paycrestContract/contracts/interfaces/IGateway.sol", "ast": { - "absolutePath": "/Users/chibie/paycrest/contracts/contracts/interfaces/IGateway.sol", + "absolutePath": "/Users/encryption/Downloads/projects/paycrest/paycrestContract/contracts/interfaces/IGateway.sol", "exportedSymbols": { "IERC20": [ - 2557 + 2554 ], "IGateway": [ - 904 + 901 ] }, - "id": 905, + "id": 902, "license": "UNLICENSED", "nodeType": "SourceUnit", "nodes": [ { - "id": 768, + "id": 765, "literals": [ "solidity", "^", @@ -369,20 +369,20 @@ { "absolutePath": "@openzeppelin/contracts/token/ERC20/IERC20.sol", "file": "@openzeppelin/contracts/token/ERC20/IERC20.sol", - "id": 770, + "id": 767, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", - "scope": 905, - "sourceUnit": 2558, + "scope": 902, + "sourceUnit": 2555, "src": "65:70:2", "symbolAliases": [ { "foreign": { - "id": 769, + "id": 766, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2557, + "referencedDeclaration": 2554, "src": "73:6:2", "typeDescriptions": {} }, @@ -398,15 +398,15 @@ "contractDependencies": [], "contractKind": "interface", "documentation": { - "id": 771, + "id": 768, "nodeType": "StructuredDocumentation", "src": "137:73:2", "text": " @title IGateway\n @notice Interface for the Gateway contract." }, "fullyImplemented": false, - "id": 904, + "id": 901, "linearizedBaseContracts": [ - 904 + 901 ], "name": "IGateway", "nameLocation": "221:8:2", @@ -415,29 +415,29 @@ { "anonymous": false, "documentation": { - "id": 772, + "id": 769, "nodeType": "StructuredDocumentation", "src": "417:335:2", "text": " @dev Emitted when a deposit is made.\n @param sender The address of the sender.\n @param token The address of the deposited token.\n @param amount The amount of the deposit.\n @param orderId The ID of the order.\n @param rate The rate at which the deposit is made.\n @param messageHash The hash of the message." }, "eventSelector": "40ccd1ceb111a3c186ef9911e1b876dc1f789ed331b86097b3b8851055b6a137", - "id": 788, + "id": 785, "name": "OrderCreated", "nameLocation": "760:12:2", "nodeType": "EventDefinition", "parameters": { - "id": 787, + "id": 784, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 774, + "id": 771, "indexed": true, "mutability": "mutable", "name": "sender", "nameLocation": "792:6:2", "nodeType": "VariableDeclaration", - "scope": 788, + "scope": 785, "src": "776:22:2", "stateVariable": false, "storageLocation": "default", @@ -446,7 +446,7 @@ "typeString": "address" }, "typeName": { - "id": 773, + "id": 770, "name": "address", "nodeType": "ElementaryTypeName", "src": "776:7:2", @@ -460,13 +460,13 @@ }, { "constant": false, - "id": 776, + "id": 773, "indexed": true, "mutability": "mutable", "name": "token", "nameLocation": "818:5:2", "nodeType": "VariableDeclaration", - "scope": 788, + "scope": 785, "src": "802:21:2", "stateVariable": false, "storageLocation": "default", @@ -475,7 +475,7 @@ "typeString": "address" }, "typeName": { - "id": 775, + "id": 772, "name": "address", "nodeType": "ElementaryTypeName", "src": "802:7:2", @@ -489,13 +489,13 @@ }, { "constant": false, - "id": 778, + "id": 775, "indexed": true, "mutability": "mutable", "name": "amount", "nameLocation": "843:6:2", "nodeType": "VariableDeclaration", - "scope": 788, + "scope": 785, "src": "827:22:2", "stateVariable": false, "storageLocation": "default", @@ -504,7 +504,7 @@ "typeString": "uint256" }, "typeName": { - "id": 777, + "id": 774, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "827:7:2", @@ -517,13 +517,13 @@ }, { "constant": false, - "id": 780, + "id": 777, "indexed": false, "mutability": "mutable", "name": "protocolFee", "nameLocation": "861:11:2", "nodeType": "VariableDeclaration", - "scope": 788, + "scope": 785, "src": "853:19:2", "stateVariable": false, "storageLocation": "default", @@ -532,7 +532,7 @@ "typeString": "uint256" }, "typeName": { - "id": 779, + "id": 776, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "853:7:2", @@ -545,13 +545,13 @@ }, { "constant": false, - "id": 782, + "id": 779, "indexed": false, "mutability": "mutable", "name": "orderId", "nameLocation": "884:7:2", "nodeType": "VariableDeclaration", - "scope": 788, + "scope": 785, "src": "876:15:2", "stateVariable": false, "storageLocation": "default", @@ -560,7 +560,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 781, + "id": 778, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "876:7:2", @@ -573,13 +573,13 @@ }, { "constant": false, - "id": 784, + "id": 781, "indexed": false, "mutability": "mutable", "name": "rate", "nameLocation": "903:4:2", "nodeType": "VariableDeclaration", - "scope": 788, + "scope": 785, "src": "895:12:2", "stateVariable": false, "storageLocation": "default", @@ -588,7 +588,7 @@ "typeString": "uint256" }, "typeName": { - "id": 783, + "id": 780, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "895:7:2", @@ -601,13 +601,13 @@ }, { "constant": false, - "id": 786, + "id": 783, "indexed": false, "mutability": "mutable", "name": "messageHash", "nameLocation": "918:11:2", "nodeType": "VariableDeclaration", - "scope": 788, + "scope": 785, "src": "911:18:2", "stateVariable": false, "storageLocation": "default", @@ -616,7 +616,7 @@ "typeString": "string" }, "typeName": { - "id": 785, + "id": 782, "name": "string", "nodeType": "ElementaryTypeName", "src": "911:6:2", @@ -635,29 +635,29 @@ { "anonymous": false, "documentation": { - "id": 789, + "id": 786, "nodeType": "StructuredDocumentation", "src": "936:303:2", "text": " @dev Emitted when an aggregator settles a transaction.\n @param splitOrderId The ID of the split order.\n @param orderId The ID of the order.\n @param liquidityProvider The address of the liquidity provider.\n @param settlePercent The percentage at which the transaction is settled." }, "eventSelector": "98ece21e01a01cbe1d1c0dad3b053c8fbd368f99be78be958fcf1d1d13fd249a", - "id": 799, + "id": 796, "name": "OrderSettled", "nameLocation": "1247:12:2", "nodeType": "EventDefinition", "parameters": { - "id": 798, + "id": 795, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 791, + "id": 788, "indexed": false, "mutability": "mutable", "name": "splitOrderId", "nameLocation": "1271:12:2", "nodeType": "VariableDeclaration", - "scope": 799, + "scope": 796, "src": "1263:20:2", "stateVariable": false, "storageLocation": "default", @@ -666,7 +666,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 790, + "id": 787, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "1263:7:2", @@ -679,13 +679,13 @@ }, { "constant": false, - "id": 793, + "id": 790, "indexed": true, "mutability": "mutable", "name": "orderId", "nameLocation": "1303:7:2", "nodeType": "VariableDeclaration", - "scope": 799, + "scope": 796, "src": "1287:23:2", "stateVariable": false, "storageLocation": "default", @@ -694,7 +694,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 792, + "id": 789, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "1287:7:2", @@ -707,13 +707,13 @@ }, { "constant": false, - "id": 795, + "id": 792, "indexed": true, "mutability": "mutable", "name": "liquidityProvider", "nameLocation": "1330:17:2", "nodeType": "VariableDeclaration", - "scope": 799, + "scope": 796, "src": "1314:33:2", "stateVariable": false, "storageLocation": "default", @@ -722,7 +722,7 @@ "typeString": "address" }, "typeName": { - "id": 794, + "id": 791, "name": "address", "nodeType": "ElementaryTypeName", "src": "1314:7:2", @@ -736,13 +736,13 @@ }, { "constant": false, - "id": 797, + "id": 794, "indexed": false, "mutability": "mutable", "name": "settlePercent", "nameLocation": "1358:13:2", "nodeType": "VariableDeclaration", - "scope": 799, + "scope": 796, "src": "1351:20:2", "stateVariable": false, "storageLocation": "default", @@ -751,7 +751,7 @@ "typeString": "uint96" }, "typeName": { - "id": 796, + "id": 793, "name": "uint96", "nodeType": "ElementaryTypeName", "src": "1351:6:2", @@ -770,29 +770,29 @@ { "anonymous": false, "documentation": { - "id": 800, + "id": 797, "nodeType": "StructuredDocumentation", "src": "1378:163:2", "text": " @dev Emitted when an aggregator refunds a transaction.\n @param fee The fee deducted from the refund amount.\n @param orderId The ID of the order." }, "eventSelector": "0736fe428e1747ca8d387c2e6fa1a31a0cde62d3a167c40a46ade59a3cdc828e", - "id": 806, + "id": 803, "name": "OrderRefunded", "nameLocation": "1549:13:2", "nodeType": "EventDefinition", "parameters": { - "id": 805, + "id": 802, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 802, + "id": 799, "indexed": false, "mutability": "mutable", "name": "fee", "nameLocation": "1571:3:2", "nodeType": "VariableDeclaration", - "scope": 806, + "scope": 803, "src": "1563:11:2", "stateVariable": false, "storageLocation": "default", @@ -801,7 +801,7 @@ "typeString": "uint256" }, "typeName": { - "id": 801, + "id": 798, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1563:7:2", @@ -814,13 +814,13 @@ }, { "constant": false, - "id": 804, + "id": 801, "indexed": true, "mutability": "mutable", "name": "orderId", "nameLocation": "1592:7:2", "nodeType": "VariableDeclaration", - "scope": 806, + "scope": 803, "src": "1576:23:2", "stateVariable": false, "storageLocation": "default", @@ -829,7 +829,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 803, + "id": 800, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "1576:7:2", @@ -848,29 +848,29 @@ { "anonymous": false, "documentation": { - "id": 807, + "id": 804, "nodeType": "StructuredDocumentation", "src": "1604:161:2", "text": " @dev Emitted when the sender's fee is transferred.\n @param sender The address of the sender.\n @param amount The amount of the fee transferred." }, "eventSelector": "44f6938ca4a10313aabb76f874cced61e35710a734a126e4afb34461bf8c2501", - "id": 813, + "id": 810, "name": "SenderFeeTransferred", "nameLocation": "1773:20:2", "nodeType": "EventDefinition", "parameters": { - "id": 812, + "id": 809, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 809, + "id": 806, "indexed": true, "mutability": "mutable", "name": "sender", "nameLocation": "1810:6:2", "nodeType": "VariableDeclaration", - "scope": 813, + "scope": 810, "src": "1794:22:2", "stateVariable": false, "storageLocation": "default", @@ -879,7 +879,7 @@ "typeString": "address" }, "typeName": { - "id": 808, + "id": 805, "name": "address", "nodeType": "ElementaryTypeName", "src": "1794:7:2", @@ -893,13 +893,13 @@ }, { "constant": false, - "id": 811, + "id": 808, "indexed": true, "mutability": "mutable", "name": "amount", "nameLocation": "1834:6:2", "nodeType": "VariableDeclaration", - "scope": 813, + "scope": 810, "src": "1818:22:2", "stateVariable": false, "storageLocation": "default", @@ -908,7 +908,7 @@ "typeString": "uint256" }, "typeName": { - "id": 810, + "id": 807, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1818:7:2", @@ -926,16 +926,16 @@ }, { "canonicalName": "IGateway.Order", - "id": 834, + "id": 831, "members": [ { "constant": false, - "id": 815, + "id": 812, "mutability": "mutable", "name": "sender", "nameLocation": "2649:6:2", "nodeType": "VariableDeclaration", - "scope": 834, + "scope": 831, "src": "2641:14:2", "stateVariable": false, "storageLocation": "default", @@ -944,7 +944,7 @@ "typeString": "address" }, "typeName": { - "id": 814, + "id": 811, "name": "address", "nodeType": "ElementaryTypeName", "src": "2641:7:2", @@ -958,12 +958,12 @@ }, { "constant": false, - "id": 817, + "id": 814, "mutability": "mutable", "name": "token", "nameLocation": "2667:5:2", "nodeType": "VariableDeclaration", - "scope": 834, + "scope": 831, "src": "2659:13:2", "stateVariable": false, "storageLocation": "default", @@ -972,7 +972,7 @@ "typeString": "address" }, "typeName": { - "id": 816, + "id": 813, "name": "address", "nodeType": "ElementaryTypeName", "src": "2659:7:2", @@ -986,12 +986,12 @@ }, { "constant": false, - "id": 819, + "id": 816, "mutability": "mutable", "name": "senderFeeRecipient", "nameLocation": "2684:18:2", "nodeType": "VariableDeclaration", - "scope": 834, + "scope": 831, "src": "2676:26:2", "stateVariable": false, "storageLocation": "default", @@ -1000,7 +1000,7 @@ "typeString": "address" }, "typeName": { - "id": 818, + "id": 815, "name": "address", "nodeType": "ElementaryTypeName", "src": "2676:7:2", @@ -1014,12 +1014,12 @@ }, { "constant": false, - "id": 821, + "id": 818, "mutability": "mutable", "name": "senderFee", "nameLocation": "2714:9:2", "nodeType": "VariableDeclaration", - "scope": 834, + "scope": 831, "src": "2706:17:2", "stateVariable": false, "storageLocation": "default", @@ -1028,7 +1028,7 @@ "typeString": "uint256" }, "typeName": { - "id": 820, + "id": 817, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2706:7:2", @@ -1041,12 +1041,12 @@ }, { "constant": false, - "id": 823, + "id": 820, "mutability": "mutable", "name": "protocolFee", "nameLocation": "2735:11:2", "nodeType": "VariableDeclaration", - "scope": 834, + "scope": 831, "src": "2727:19:2", "stateVariable": false, "storageLocation": "default", @@ -1055,7 +1055,7 @@ "typeString": "uint256" }, "typeName": { - "id": 822, + "id": 819, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2727:7:2", @@ -1068,12 +1068,12 @@ }, { "constant": false, - "id": 825, + "id": 822, "mutability": "mutable", "name": "isFulfilled", "nameLocation": "2755:11:2", "nodeType": "VariableDeclaration", - "scope": 834, + "scope": 831, "src": "2750:16:2", "stateVariable": false, "storageLocation": "default", @@ -1082,7 +1082,7 @@ "typeString": "bool" }, "typeName": { - "id": 824, + "id": 821, "name": "bool", "nodeType": "ElementaryTypeName", "src": "2750:4:2", @@ -1095,12 +1095,12 @@ }, { "constant": false, - "id": 827, + "id": 824, "mutability": "mutable", "name": "isRefunded", "nameLocation": "2775:10:2", "nodeType": "VariableDeclaration", - "scope": 834, + "scope": 831, "src": "2770:15:2", "stateVariable": false, "storageLocation": "default", @@ -1109,7 +1109,7 @@ "typeString": "bool" }, "typeName": { - "id": 826, + "id": 823, "name": "bool", "nodeType": "ElementaryTypeName", "src": "2770:4:2", @@ -1122,12 +1122,12 @@ }, { "constant": false, - "id": 829, + "id": 826, "mutability": "mutable", "name": "refundAddress", "nameLocation": "2797:13:2", "nodeType": "VariableDeclaration", - "scope": 834, + "scope": 831, "src": "2789:21:2", "stateVariable": false, "storageLocation": "default", @@ -1136,7 +1136,7 @@ "typeString": "address" }, "typeName": { - "id": 828, + "id": 825, "name": "address", "nodeType": "ElementaryTypeName", "src": "2789:7:2", @@ -1150,12 +1150,12 @@ }, { "constant": false, - "id": 831, + "id": 828, "mutability": "mutable", "name": "currentBPS", "nameLocation": "2821:10:2", "nodeType": "VariableDeclaration", - "scope": 834, + "scope": 831, "src": "2814:17:2", "stateVariable": false, "storageLocation": "default", @@ -1164,7 +1164,7 @@ "typeString": "uint96" }, "typeName": { - "id": 830, + "id": 827, "name": "uint96", "nodeType": "ElementaryTypeName", "src": "2814:6:2", @@ -1177,12 +1177,12 @@ }, { "constant": false, - "id": 833, + "id": 830, "mutability": "mutable", "name": "amount", "nameLocation": "2843:6:2", "nodeType": "VariableDeclaration", - "scope": 834, + "scope": 831, "src": "2835:14:2", "stateVariable": false, "storageLocation": "default", @@ -1191,7 +1191,7 @@ "typeString": "uint256" }, "typeName": { - "id": 832, + "id": 829, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2835:7:2", @@ -1206,19 +1206,19 @@ "name": "Order", "nameLocation": "2631:5:2", "nodeType": "StructDefinition", - "scope": 904, + "scope": 901, "src": "2624:229:2", "visibility": "public" }, { "documentation": { - "id": 835, + "id": 832, "nodeType": "StructuredDocumentation", "src": "3048:964:2", "text": " @notice Locks the sender's amount of token into Gateway.\n @dev Requirements:\n - `msg.sender` must approve Gateway contract on `_token` of at least `amount` before function call.\n - `_token` must be an acceptable token. See {isTokenSupported}.\n - `amount` must be greater than minimum.\n - `_refundAddress` refund address must not be zero address.\n @param _token The address of the token.\n @param _amount The amount in the decimal of `_token` to be locked.\n @param _rate The rate at which the sender intends to sell `_amount` of `_token`.\n @param _senderFeeRecipient The address that will receive `_senderFee` in `_token`.\n @param _senderFee The amount in the decimal of `_token` that will be paid to `_senderFeeRecipient`.\n @param _refundAddress The address that will receive `_amount` in `_token` when there is a need to refund.\n @param messageHash The hash of the message.\n @return _orderId The ID of the order." }, "functionSelector": "809804f7", - "id": 854, + "id": 851, "implemented": false, "kind": "function", "modifiers": [], @@ -1226,17 +1226,17 @@ "nameLocation": "4023:11:2", "nodeType": "FunctionDefinition", "parameters": { - "id": 850, + "id": 847, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 837, + "id": 834, "mutability": "mutable", "name": "_token", "nameLocation": "4046:6:2", "nodeType": "VariableDeclaration", - "scope": 854, + "scope": 851, "src": "4038:14:2", "stateVariable": false, "storageLocation": "default", @@ -1245,7 +1245,7 @@ "typeString": "address" }, "typeName": { - "id": 836, + "id": 833, "name": "address", "nodeType": "ElementaryTypeName", "src": "4038:7:2", @@ -1259,12 +1259,12 @@ }, { "constant": false, - "id": 839, + "id": 836, "mutability": "mutable", "name": "_amount", "nameLocation": "4064:7:2", "nodeType": "VariableDeclaration", - "scope": 854, + "scope": 851, "src": "4056:15:2", "stateVariable": false, "storageLocation": "default", @@ -1273,7 +1273,7 @@ "typeString": "uint256" }, "typeName": { - "id": 838, + "id": 835, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4056:7:2", @@ -1286,12 +1286,12 @@ }, { "constant": false, - "id": 841, + "id": 838, "mutability": "mutable", "name": "_rate", "nameLocation": "4082:5:2", "nodeType": "VariableDeclaration", - "scope": 854, + "scope": 851, "src": "4075:12:2", "stateVariable": false, "storageLocation": "default", @@ -1300,7 +1300,7 @@ "typeString": "uint96" }, "typeName": { - "id": 840, + "id": 837, "name": "uint96", "nodeType": "ElementaryTypeName", "src": "4075:6:2", @@ -1313,12 +1313,12 @@ }, { "constant": false, - "id": 843, + "id": 840, "mutability": "mutable", "name": "_senderFeeRecipient", "nameLocation": "4099:19:2", "nodeType": "VariableDeclaration", - "scope": 854, + "scope": 851, "src": "4091:27:2", "stateVariable": false, "storageLocation": "default", @@ -1327,7 +1327,7 @@ "typeString": "address" }, "typeName": { - "id": 842, + "id": 839, "name": "address", "nodeType": "ElementaryTypeName", "src": "4091:7:2", @@ -1341,12 +1341,12 @@ }, { "constant": false, - "id": 845, + "id": 842, "mutability": "mutable", "name": "_senderFee", "nameLocation": "4130:10:2", "nodeType": "VariableDeclaration", - "scope": 854, + "scope": 851, "src": "4122:18:2", "stateVariable": false, "storageLocation": "default", @@ -1355,7 +1355,7 @@ "typeString": "uint256" }, "typeName": { - "id": 844, + "id": 841, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4122:7:2", @@ -1368,12 +1368,12 @@ }, { "constant": false, - "id": 847, + "id": 844, "mutability": "mutable", "name": "_refundAddress", "nameLocation": "4152:14:2", "nodeType": "VariableDeclaration", - "scope": 854, + "scope": 851, "src": "4144:22:2", "stateVariable": false, "storageLocation": "default", @@ -1382,7 +1382,7 @@ "typeString": "address" }, "typeName": { - "id": 846, + "id": 843, "name": "address", "nodeType": "ElementaryTypeName", "src": "4144:7:2", @@ -1396,12 +1396,12 @@ }, { "constant": false, - "id": 849, + "id": 846, "mutability": "mutable", "name": "messageHash", "nameLocation": "4186:11:2", "nodeType": "VariableDeclaration", - "scope": 854, + "scope": 851, "src": "4170:27:2", "stateVariable": false, "storageLocation": "calldata", @@ -1410,7 +1410,7 @@ "typeString": "string" }, "typeName": { - "id": 848, + "id": 845, "name": "string", "nodeType": "ElementaryTypeName", "src": "4170:6:2", @@ -1425,17 +1425,17 @@ "src": "4034:166:2" }, "returnParameters": { - "id": 853, + "id": 850, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 852, + "id": 849, "mutability": "mutable", "name": "_orderId", "nameLocation": "4227:8:2", "nodeType": "VariableDeclaration", - "scope": 854, + "scope": 851, "src": "4219:16:2", "stateVariable": false, "storageLocation": "default", @@ -1444,7 +1444,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 851, + "id": 848, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "4219:7:2", @@ -1458,7 +1458,7 @@ ], "src": "4218:18:2" }, - "scope": 904, + "scope": 901, "src": "4014:223:2", "stateMutability": "nonpayable", "virtual": false, @@ -1466,13 +1466,13 @@ }, { "documentation": { - "id": 855, + "id": 852, "nodeType": "StructuredDocumentation", "src": "4240:366:2", "text": " @notice Settles a transaction and distributes rewards accordingly.\n @param _splitOrderId The ID of the split order.\n @param _orderId The ID of the transaction.\n @param _liquidityProvider The address of the liquidity provider.\n @param _settlePercent The rate at which the transaction is settled.\n @return bool the settlement is successful." }, "functionSelector": "f22ee704", - "id": 868, + "id": 865, "implemented": false, "kind": "function", "modifiers": [], @@ -1480,17 +1480,17 @@ "nameLocation": "4617:6:2", "nodeType": "FunctionDefinition", "parameters": { - "id": 864, + "id": 861, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 857, + "id": 854, "mutability": "mutable", "name": "_splitOrderId", "nameLocation": "4635:13:2", "nodeType": "VariableDeclaration", - "scope": 868, + "scope": 865, "src": "4627:21:2", "stateVariable": false, "storageLocation": "default", @@ -1499,7 +1499,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 856, + "id": 853, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "4627:7:2", @@ -1512,12 +1512,12 @@ }, { "constant": false, - "id": 859, + "id": 856, "mutability": "mutable", "name": "_orderId", "nameLocation": "4660:8:2", "nodeType": "VariableDeclaration", - "scope": 868, + "scope": 865, "src": "4652:16:2", "stateVariable": false, "storageLocation": "default", @@ -1526,7 +1526,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 858, + "id": 855, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "4652:7:2", @@ -1539,12 +1539,12 @@ }, { "constant": false, - "id": 861, + "id": 858, "mutability": "mutable", "name": "_liquidityProvider", "nameLocation": "4680:18:2", "nodeType": "VariableDeclaration", - "scope": 868, + "scope": 865, "src": "4672:26:2", "stateVariable": false, "storageLocation": "default", @@ -1553,7 +1553,7 @@ "typeString": "address" }, "typeName": { - "id": 860, + "id": 857, "name": "address", "nodeType": "ElementaryTypeName", "src": "4672:7:2", @@ -1567,12 +1567,12 @@ }, { "constant": false, - "id": 863, + "id": 860, "mutability": "mutable", "name": "_settlePercent", "nameLocation": "4709:14:2", "nodeType": "VariableDeclaration", - "scope": 868, + "scope": 865, "src": "4702:21:2", "stateVariable": false, "storageLocation": "default", @@ -1581,7 +1581,7 @@ "typeString": "uint64" }, "typeName": { - "id": 862, + "id": 859, "name": "uint64", "nodeType": "ElementaryTypeName", "src": "4702:6:2", @@ -1596,17 +1596,17 @@ "src": "4623:103:2" }, "returnParameters": { - "id": 867, + "id": 864, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 866, + "id": 863, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 868, + "scope": 865, "src": "4745:4:2", "stateVariable": false, "storageLocation": "default", @@ -1615,7 +1615,7 @@ "typeString": "bool" }, "typeName": { - "id": 865, + "id": 862, "name": "bool", "nodeType": "ElementaryTypeName", "src": "4745:4:2", @@ -1629,7 +1629,7 @@ ], "src": "4744:6:2" }, - "scope": 904, + "scope": 901, "src": "4608:143:2", "stateMutability": "nonpayable", "virtual": false, @@ -1637,13 +1637,13 @@ }, { "documentation": { - "id": 869, + "id": 866, "nodeType": "StructuredDocumentation", "src": "4754:299:2", "text": " @notice Refunds to the specified refundable address.\n @dev Requirements:\n - Only aggregators can call this function.\n @param _fee The amount to be deducted from the amount to be refunded.\n @param _orderId The ID of the transaction.\n @return bool the refund is successful." }, "functionSelector": "71eedb88", - "id": 878, + "id": 875, "implemented": false, "kind": "function", "modifiers": [], @@ -1651,17 +1651,17 @@ "nameLocation": "5064:6:2", "nodeType": "FunctionDefinition", "parameters": { - "id": 874, + "id": 871, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 871, + "id": 868, "mutability": "mutable", "name": "_fee", "nameLocation": "5079:4:2", "nodeType": "VariableDeclaration", - "scope": 878, + "scope": 875, "src": "5071:12:2", "stateVariable": false, "storageLocation": "default", @@ -1670,7 +1670,7 @@ "typeString": "uint256" }, "typeName": { - "id": 870, + "id": 867, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "5071:7:2", @@ -1683,12 +1683,12 @@ }, { "constant": false, - "id": 873, + "id": 870, "mutability": "mutable", "name": "_orderId", "nameLocation": "5093:8:2", "nodeType": "VariableDeclaration", - "scope": 878, + "scope": 875, "src": "5085:16:2", "stateVariable": false, "storageLocation": "default", @@ -1697,7 +1697,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 872, + "id": 869, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "5085:7:2", @@ -1712,17 +1712,17 @@ "src": "5070:32:2" }, "returnParameters": { - "id": 877, + "id": 874, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 876, + "id": 873, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 878, + "scope": 875, "src": "5121:4:2", "stateVariable": false, "storageLocation": "default", @@ -1731,7 +1731,7 @@ "typeString": "bool" }, "typeName": { - "id": 875, + "id": 872, "name": "bool", "nodeType": "ElementaryTypeName", "src": "5121:4:2", @@ -1745,7 +1745,7 @@ ], "src": "5120:6:2" }, - "scope": 904, + "scope": 901, "src": "5055:72:2", "stateMutability": "nonpayable", "virtual": false, @@ -1753,13 +1753,13 @@ }, { "documentation": { - "id": 879, + "id": 876, "nodeType": "StructuredDocumentation", "src": "5130:157:2", "text": " @notice Checks if a token is supported by Gateway.\n @param _token The address of the token to check.\n @return bool the token is supported." }, "functionSelector": "75151b63", - "id": 886, + "id": 883, "implemented": false, "kind": "function", "modifiers": [], @@ -1767,17 +1767,17 @@ "nameLocation": "5298:16:2", "nodeType": "FunctionDefinition", "parameters": { - "id": 882, + "id": 879, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 881, + "id": 878, "mutability": "mutable", "name": "_token", "nameLocation": "5323:6:2", "nodeType": "VariableDeclaration", - "scope": 886, + "scope": 883, "src": "5315:14:2", "stateVariable": false, "storageLocation": "default", @@ -1786,7 +1786,7 @@ "typeString": "address" }, "typeName": { - "id": 880, + "id": 877, "name": "address", "nodeType": "ElementaryTypeName", "src": "5315:7:2", @@ -1802,17 +1802,17 @@ "src": "5314:16:2" }, "returnParameters": { - "id": 885, + "id": 882, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 884, + "id": 881, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 886, + "scope": 883, "src": "5354:4:2", "stateVariable": false, "storageLocation": "default", @@ -1821,7 +1821,7 @@ "typeString": "bool" }, "typeName": { - "id": 883, + "id": 880, "name": "bool", "nodeType": "ElementaryTypeName", "src": "5354:4:2", @@ -1835,7 +1835,7 @@ ], "src": "5353:6:2" }, - "scope": 904, + "scope": 901, "src": "5289:71:2", "stateMutability": "view", "virtual": false, @@ -1843,13 +1843,13 @@ }, { "documentation": { - "id": 887, + "id": 884, "nodeType": "StructuredDocumentation", "src": "5363:128:2", "text": " @notice Gets the details of an order.\n @param _orderId The ID of the order.\n @return Order The order details." }, "functionSelector": "768c6ec0", - "id": 895, + "id": 892, "implemented": false, "kind": "function", "modifiers": [], @@ -1857,17 +1857,17 @@ "nameLocation": "5502:12:2", "nodeType": "FunctionDefinition", "parameters": { - "id": 890, + "id": 887, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 889, + "id": 886, "mutability": "mutable", "name": "_orderId", "nameLocation": "5523:8:2", "nodeType": "VariableDeclaration", - "scope": 895, + "scope": 892, "src": "5515:16:2", "stateVariable": false, "storageLocation": "default", @@ -1876,7 +1876,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 888, + "id": 885, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "5515:7:2", @@ -1891,41 +1891,41 @@ "src": "5514:18:2" }, "returnParameters": { - "id": 894, + "id": 891, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 893, + "id": 890, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 895, + "scope": 892, "src": "5556:12:2", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_memory_ptr", + "typeIdentifier": "t_struct$_Order_$831_memory_ptr", "typeString": "struct IGateway.Order" }, "typeName": { - "id": 892, + "id": 889, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 891, + "id": 888, "name": "Order", "nameLocations": [ "5556:5:2" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 834, + "referencedDeclaration": 831, "src": "5556:5:2" }, - "referencedDeclaration": 834, + "referencedDeclaration": 831, "src": "5556:5:2", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage_ptr", + "typeIdentifier": "t_struct$_Order_$831_storage_ptr", "typeString": "struct IGateway.Order" } }, @@ -1934,7 +1934,7 @@ ], "src": "5555:14:2" }, - "scope": 904, + "scope": 901, "src": "5493:77:2", "stateMutability": "view", "virtual": false, @@ -1942,13 +1942,13 @@ }, { "documentation": { - "id": 896, + "id": 893, "nodeType": "StructuredDocumentation", "src": "5573:154:2", "text": " @notice Gets the fee details of Gateway.\n @return protocolReward The protocol reward amount.\n @return max_bps The maximum basis points." }, "functionSelector": "b810c636", - "id": 903, + "id": 900, "implemented": false, "kind": "function", "modifiers": [], @@ -1956,23 +1956,23 @@ "nameLocation": "5738:13:2", "nodeType": "FunctionDefinition", "parameters": { - "id": 897, + "id": 894, "nodeType": "ParameterList", "parameters": [], "src": "5751:2:2" }, "returnParameters": { - "id": 902, + "id": 899, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 899, + "id": 896, "mutability": "mutable", "name": "protocolReward", "nameLocation": "5784:14:2", "nodeType": "VariableDeclaration", - "scope": 903, + "scope": 900, "src": "5777:21:2", "stateVariable": false, "storageLocation": "default", @@ -1981,7 +1981,7 @@ "typeString": "uint64" }, "typeName": { - "id": 898, + "id": 895, "name": "uint64", "nodeType": "ElementaryTypeName", "src": "5777:6:2", @@ -1994,12 +1994,12 @@ }, { "constant": false, - "id": 901, + "id": 898, "mutability": "mutable", "name": "max_bps", "nameLocation": "5808:7:2", "nodeType": "VariableDeclaration", - "scope": 903, + "scope": 900, "src": "5800:15:2", "stateVariable": false, "storageLocation": "default", @@ -2008,7 +2008,7 @@ "typeString": "uint256" }, "typeName": { - "id": 900, + "id": 897, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "5800:7:2", @@ -2022,14 +2022,14 @@ ], "src": "5776:40:2" }, - "scope": 904, + "scope": 901, "src": "5729:88:2", "stateMutability": "view", "virtual": false, "visibility": "external" } ], - "scope": 905, + "scope": 902, "src": "211:5608:2", "usedErrors": [] } @@ -2037,21 +2037,21 @@ "src": "39:5781:2" }, "legacyAST": { - "absolutePath": "/Users/chibie/paycrest/contracts/contracts/interfaces/IGateway.sol", + "absolutePath": "/Users/encryption/Downloads/projects/paycrest/paycrestContract/contracts/interfaces/IGateway.sol", "exportedSymbols": { "IERC20": [ - 2557 + 2554 ], "IGateway": [ - 904 + 901 ] }, - "id": 905, + "id": 902, "license": "UNLICENSED", "nodeType": "SourceUnit", "nodes": [ { - "id": 768, + "id": 765, "literals": [ "solidity", "^", @@ -2064,20 +2064,20 @@ { "absolutePath": "@openzeppelin/contracts/token/ERC20/IERC20.sol", "file": "@openzeppelin/contracts/token/ERC20/IERC20.sol", - "id": 770, + "id": 767, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", - "scope": 905, - "sourceUnit": 2558, + "scope": 902, + "sourceUnit": 2555, "src": "65:70:2", "symbolAliases": [ { "foreign": { - "id": 769, + "id": 766, "name": "IERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2557, + "referencedDeclaration": 2554, "src": "73:6:2", "typeDescriptions": {} }, @@ -2093,15 +2093,15 @@ "contractDependencies": [], "contractKind": "interface", "documentation": { - "id": 771, + "id": 768, "nodeType": "StructuredDocumentation", "src": "137:73:2", "text": " @title IGateway\n @notice Interface for the Gateway contract." }, "fullyImplemented": false, - "id": 904, + "id": 901, "linearizedBaseContracts": [ - 904 + 901 ], "name": "IGateway", "nameLocation": "221:8:2", @@ -2110,29 +2110,29 @@ { "anonymous": false, "documentation": { - "id": 772, + "id": 769, "nodeType": "StructuredDocumentation", "src": "417:335:2", "text": " @dev Emitted when a deposit is made.\n @param sender The address of the sender.\n @param token The address of the deposited token.\n @param amount The amount of the deposit.\n @param orderId The ID of the order.\n @param rate The rate at which the deposit is made.\n @param messageHash The hash of the message." }, "eventSelector": "40ccd1ceb111a3c186ef9911e1b876dc1f789ed331b86097b3b8851055b6a137", - "id": 788, + "id": 785, "name": "OrderCreated", "nameLocation": "760:12:2", "nodeType": "EventDefinition", "parameters": { - "id": 787, + "id": 784, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 774, + "id": 771, "indexed": true, "mutability": "mutable", "name": "sender", "nameLocation": "792:6:2", "nodeType": "VariableDeclaration", - "scope": 788, + "scope": 785, "src": "776:22:2", "stateVariable": false, "storageLocation": "default", @@ -2141,7 +2141,7 @@ "typeString": "address" }, "typeName": { - "id": 773, + "id": 770, "name": "address", "nodeType": "ElementaryTypeName", "src": "776:7:2", @@ -2155,13 +2155,13 @@ }, { "constant": false, - "id": 776, + "id": 773, "indexed": true, "mutability": "mutable", "name": "token", "nameLocation": "818:5:2", "nodeType": "VariableDeclaration", - "scope": 788, + "scope": 785, "src": "802:21:2", "stateVariable": false, "storageLocation": "default", @@ -2170,7 +2170,7 @@ "typeString": "address" }, "typeName": { - "id": 775, + "id": 772, "name": "address", "nodeType": "ElementaryTypeName", "src": "802:7:2", @@ -2184,13 +2184,13 @@ }, { "constant": false, - "id": 778, + "id": 775, "indexed": true, "mutability": "mutable", "name": "amount", "nameLocation": "843:6:2", "nodeType": "VariableDeclaration", - "scope": 788, + "scope": 785, "src": "827:22:2", "stateVariable": false, "storageLocation": "default", @@ -2199,7 +2199,7 @@ "typeString": "uint256" }, "typeName": { - "id": 777, + "id": 774, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "827:7:2", @@ -2212,13 +2212,13 @@ }, { "constant": false, - "id": 780, + "id": 777, "indexed": false, "mutability": "mutable", "name": "protocolFee", "nameLocation": "861:11:2", "nodeType": "VariableDeclaration", - "scope": 788, + "scope": 785, "src": "853:19:2", "stateVariable": false, "storageLocation": "default", @@ -2227,7 +2227,7 @@ "typeString": "uint256" }, "typeName": { - "id": 779, + "id": 776, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "853:7:2", @@ -2240,13 +2240,13 @@ }, { "constant": false, - "id": 782, + "id": 779, "indexed": false, "mutability": "mutable", "name": "orderId", "nameLocation": "884:7:2", "nodeType": "VariableDeclaration", - "scope": 788, + "scope": 785, "src": "876:15:2", "stateVariable": false, "storageLocation": "default", @@ -2255,7 +2255,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 781, + "id": 778, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "876:7:2", @@ -2268,13 +2268,13 @@ }, { "constant": false, - "id": 784, + "id": 781, "indexed": false, "mutability": "mutable", "name": "rate", "nameLocation": "903:4:2", "nodeType": "VariableDeclaration", - "scope": 788, + "scope": 785, "src": "895:12:2", "stateVariable": false, "storageLocation": "default", @@ -2283,7 +2283,7 @@ "typeString": "uint256" }, "typeName": { - "id": 783, + "id": 780, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "895:7:2", @@ -2296,13 +2296,13 @@ }, { "constant": false, - "id": 786, + "id": 783, "indexed": false, "mutability": "mutable", "name": "messageHash", "nameLocation": "918:11:2", "nodeType": "VariableDeclaration", - "scope": 788, + "scope": 785, "src": "911:18:2", "stateVariable": false, "storageLocation": "default", @@ -2311,7 +2311,7 @@ "typeString": "string" }, "typeName": { - "id": 785, + "id": 782, "name": "string", "nodeType": "ElementaryTypeName", "src": "911:6:2", @@ -2330,29 +2330,29 @@ { "anonymous": false, "documentation": { - "id": 789, + "id": 786, "nodeType": "StructuredDocumentation", "src": "936:303:2", "text": " @dev Emitted when an aggregator settles a transaction.\n @param splitOrderId The ID of the split order.\n @param orderId The ID of the order.\n @param liquidityProvider The address of the liquidity provider.\n @param settlePercent The percentage at which the transaction is settled." }, "eventSelector": "98ece21e01a01cbe1d1c0dad3b053c8fbd368f99be78be958fcf1d1d13fd249a", - "id": 799, + "id": 796, "name": "OrderSettled", "nameLocation": "1247:12:2", "nodeType": "EventDefinition", "parameters": { - "id": 798, + "id": 795, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 791, + "id": 788, "indexed": false, "mutability": "mutable", "name": "splitOrderId", "nameLocation": "1271:12:2", "nodeType": "VariableDeclaration", - "scope": 799, + "scope": 796, "src": "1263:20:2", "stateVariable": false, "storageLocation": "default", @@ -2361,7 +2361,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 790, + "id": 787, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "1263:7:2", @@ -2374,13 +2374,13 @@ }, { "constant": false, - "id": 793, + "id": 790, "indexed": true, "mutability": "mutable", "name": "orderId", "nameLocation": "1303:7:2", "nodeType": "VariableDeclaration", - "scope": 799, + "scope": 796, "src": "1287:23:2", "stateVariable": false, "storageLocation": "default", @@ -2389,7 +2389,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 792, + "id": 789, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "1287:7:2", @@ -2402,13 +2402,13 @@ }, { "constant": false, - "id": 795, + "id": 792, "indexed": true, "mutability": "mutable", "name": "liquidityProvider", "nameLocation": "1330:17:2", "nodeType": "VariableDeclaration", - "scope": 799, + "scope": 796, "src": "1314:33:2", "stateVariable": false, "storageLocation": "default", @@ -2417,7 +2417,7 @@ "typeString": "address" }, "typeName": { - "id": 794, + "id": 791, "name": "address", "nodeType": "ElementaryTypeName", "src": "1314:7:2", @@ -2431,13 +2431,13 @@ }, { "constant": false, - "id": 797, + "id": 794, "indexed": false, "mutability": "mutable", "name": "settlePercent", "nameLocation": "1358:13:2", "nodeType": "VariableDeclaration", - "scope": 799, + "scope": 796, "src": "1351:20:2", "stateVariable": false, "storageLocation": "default", @@ -2446,7 +2446,7 @@ "typeString": "uint96" }, "typeName": { - "id": 796, + "id": 793, "name": "uint96", "nodeType": "ElementaryTypeName", "src": "1351:6:2", @@ -2465,29 +2465,29 @@ { "anonymous": false, "documentation": { - "id": 800, + "id": 797, "nodeType": "StructuredDocumentation", "src": "1378:163:2", "text": " @dev Emitted when an aggregator refunds a transaction.\n @param fee The fee deducted from the refund amount.\n @param orderId The ID of the order." }, "eventSelector": "0736fe428e1747ca8d387c2e6fa1a31a0cde62d3a167c40a46ade59a3cdc828e", - "id": 806, + "id": 803, "name": "OrderRefunded", "nameLocation": "1549:13:2", "nodeType": "EventDefinition", "parameters": { - "id": 805, + "id": 802, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 802, + "id": 799, "indexed": false, "mutability": "mutable", "name": "fee", "nameLocation": "1571:3:2", "nodeType": "VariableDeclaration", - "scope": 806, + "scope": 803, "src": "1563:11:2", "stateVariable": false, "storageLocation": "default", @@ -2496,7 +2496,7 @@ "typeString": "uint256" }, "typeName": { - "id": 801, + "id": 798, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1563:7:2", @@ -2509,13 +2509,13 @@ }, { "constant": false, - "id": 804, + "id": 801, "indexed": true, "mutability": "mutable", "name": "orderId", "nameLocation": "1592:7:2", "nodeType": "VariableDeclaration", - "scope": 806, + "scope": 803, "src": "1576:23:2", "stateVariable": false, "storageLocation": "default", @@ -2524,7 +2524,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 803, + "id": 800, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "1576:7:2", @@ -2543,29 +2543,29 @@ { "anonymous": false, "documentation": { - "id": 807, + "id": 804, "nodeType": "StructuredDocumentation", "src": "1604:161:2", "text": " @dev Emitted when the sender's fee is transferred.\n @param sender The address of the sender.\n @param amount The amount of the fee transferred." }, "eventSelector": "44f6938ca4a10313aabb76f874cced61e35710a734a126e4afb34461bf8c2501", - "id": 813, + "id": 810, "name": "SenderFeeTransferred", "nameLocation": "1773:20:2", "nodeType": "EventDefinition", "parameters": { - "id": 812, + "id": 809, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 809, + "id": 806, "indexed": true, "mutability": "mutable", "name": "sender", "nameLocation": "1810:6:2", "nodeType": "VariableDeclaration", - "scope": 813, + "scope": 810, "src": "1794:22:2", "stateVariable": false, "storageLocation": "default", @@ -2574,7 +2574,7 @@ "typeString": "address" }, "typeName": { - "id": 808, + "id": 805, "name": "address", "nodeType": "ElementaryTypeName", "src": "1794:7:2", @@ -2588,13 +2588,13 @@ }, { "constant": false, - "id": 811, + "id": 808, "indexed": true, "mutability": "mutable", "name": "amount", "nameLocation": "1834:6:2", "nodeType": "VariableDeclaration", - "scope": 813, + "scope": 810, "src": "1818:22:2", "stateVariable": false, "storageLocation": "default", @@ -2603,7 +2603,7 @@ "typeString": "uint256" }, "typeName": { - "id": 810, + "id": 807, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1818:7:2", @@ -2621,16 +2621,16 @@ }, { "canonicalName": "IGateway.Order", - "id": 834, + "id": 831, "members": [ { "constant": false, - "id": 815, + "id": 812, "mutability": "mutable", "name": "sender", "nameLocation": "2649:6:2", "nodeType": "VariableDeclaration", - "scope": 834, + "scope": 831, "src": "2641:14:2", "stateVariable": false, "storageLocation": "default", @@ -2639,7 +2639,7 @@ "typeString": "address" }, "typeName": { - "id": 814, + "id": 811, "name": "address", "nodeType": "ElementaryTypeName", "src": "2641:7:2", @@ -2653,12 +2653,12 @@ }, { "constant": false, - "id": 817, + "id": 814, "mutability": "mutable", "name": "token", "nameLocation": "2667:5:2", "nodeType": "VariableDeclaration", - "scope": 834, + "scope": 831, "src": "2659:13:2", "stateVariable": false, "storageLocation": "default", @@ -2667,7 +2667,7 @@ "typeString": "address" }, "typeName": { - "id": 816, + "id": 813, "name": "address", "nodeType": "ElementaryTypeName", "src": "2659:7:2", @@ -2681,12 +2681,12 @@ }, { "constant": false, - "id": 819, + "id": 816, "mutability": "mutable", "name": "senderFeeRecipient", "nameLocation": "2684:18:2", "nodeType": "VariableDeclaration", - "scope": 834, + "scope": 831, "src": "2676:26:2", "stateVariable": false, "storageLocation": "default", @@ -2695,7 +2695,7 @@ "typeString": "address" }, "typeName": { - "id": 818, + "id": 815, "name": "address", "nodeType": "ElementaryTypeName", "src": "2676:7:2", @@ -2709,12 +2709,12 @@ }, { "constant": false, - "id": 821, + "id": 818, "mutability": "mutable", "name": "senderFee", "nameLocation": "2714:9:2", "nodeType": "VariableDeclaration", - "scope": 834, + "scope": 831, "src": "2706:17:2", "stateVariable": false, "storageLocation": "default", @@ -2723,7 +2723,7 @@ "typeString": "uint256" }, "typeName": { - "id": 820, + "id": 817, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2706:7:2", @@ -2736,12 +2736,12 @@ }, { "constant": false, - "id": 823, + "id": 820, "mutability": "mutable", "name": "protocolFee", "nameLocation": "2735:11:2", "nodeType": "VariableDeclaration", - "scope": 834, + "scope": 831, "src": "2727:19:2", "stateVariable": false, "storageLocation": "default", @@ -2750,7 +2750,7 @@ "typeString": "uint256" }, "typeName": { - "id": 822, + "id": 819, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2727:7:2", @@ -2763,12 +2763,12 @@ }, { "constant": false, - "id": 825, + "id": 822, "mutability": "mutable", "name": "isFulfilled", "nameLocation": "2755:11:2", "nodeType": "VariableDeclaration", - "scope": 834, + "scope": 831, "src": "2750:16:2", "stateVariable": false, "storageLocation": "default", @@ -2777,7 +2777,7 @@ "typeString": "bool" }, "typeName": { - "id": 824, + "id": 821, "name": "bool", "nodeType": "ElementaryTypeName", "src": "2750:4:2", @@ -2790,12 +2790,12 @@ }, { "constant": false, - "id": 827, + "id": 824, "mutability": "mutable", "name": "isRefunded", "nameLocation": "2775:10:2", "nodeType": "VariableDeclaration", - "scope": 834, + "scope": 831, "src": "2770:15:2", "stateVariable": false, "storageLocation": "default", @@ -2804,7 +2804,7 @@ "typeString": "bool" }, "typeName": { - "id": 826, + "id": 823, "name": "bool", "nodeType": "ElementaryTypeName", "src": "2770:4:2", @@ -2817,12 +2817,12 @@ }, { "constant": false, - "id": 829, + "id": 826, "mutability": "mutable", "name": "refundAddress", "nameLocation": "2797:13:2", "nodeType": "VariableDeclaration", - "scope": 834, + "scope": 831, "src": "2789:21:2", "stateVariable": false, "storageLocation": "default", @@ -2831,7 +2831,7 @@ "typeString": "address" }, "typeName": { - "id": 828, + "id": 825, "name": "address", "nodeType": "ElementaryTypeName", "src": "2789:7:2", @@ -2845,12 +2845,12 @@ }, { "constant": false, - "id": 831, + "id": 828, "mutability": "mutable", "name": "currentBPS", "nameLocation": "2821:10:2", "nodeType": "VariableDeclaration", - "scope": 834, + "scope": 831, "src": "2814:17:2", "stateVariable": false, "storageLocation": "default", @@ -2859,7 +2859,7 @@ "typeString": "uint96" }, "typeName": { - "id": 830, + "id": 827, "name": "uint96", "nodeType": "ElementaryTypeName", "src": "2814:6:2", @@ -2872,12 +2872,12 @@ }, { "constant": false, - "id": 833, + "id": 830, "mutability": "mutable", "name": "amount", "nameLocation": "2843:6:2", "nodeType": "VariableDeclaration", - "scope": 834, + "scope": 831, "src": "2835:14:2", "stateVariable": false, "storageLocation": "default", @@ -2886,7 +2886,7 @@ "typeString": "uint256" }, "typeName": { - "id": 832, + "id": 829, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2835:7:2", @@ -2901,19 +2901,19 @@ "name": "Order", "nameLocation": "2631:5:2", "nodeType": "StructDefinition", - "scope": 904, + "scope": 901, "src": "2624:229:2", "visibility": "public" }, { "documentation": { - "id": 835, + "id": 832, "nodeType": "StructuredDocumentation", "src": "3048:964:2", "text": " @notice Locks the sender's amount of token into Gateway.\n @dev Requirements:\n - `msg.sender` must approve Gateway contract on `_token` of at least `amount` before function call.\n - `_token` must be an acceptable token. See {isTokenSupported}.\n - `amount` must be greater than minimum.\n - `_refundAddress` refund address must not be zero address.\n @param _token The address of the token.\n @param _amount The amount in the decimal of `_token` to be locked.\n @param _rate The rate at which the sender intends to sell `_amount` of `_token`.\n @param _senderFeeRecipient The address that will receive `_senderFee` in `_token`.\n @param _senderFee The amount in the decimal of `_token` that will be paid to `_senderFeeRecipient`.\n @param _refundAddress The address that will receive `_amount` in `_token` when there is a need to refund.\n @param messageHash The hash of the message.\n @return _orderId The ID of the order." }, "functionSelector": "809804f7", - "id": 854, + "id": 851, "implemented": false, "kind": "function", "modifiers": [], @@ -2921,17 +2921,17 @@ "nameLocation": "4023:11:2", "nodeType": "FunctionDefinition", "parameters": { - "id": 850, + "id": 847, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 837, + "id": 834, "mutability": "mutable", "name": "_token", "nameLocation": "4046:6:2", "nodeType": "VariableDeclaration", - "scope": 854, + "scope": 851, "src": "4038:14:2", "stateVariable": false, "storageLocation": "default", @@ -2940,7 +2940,7 @@ "typeString": "address" }, "typeName": { - "id": 836, + "id": 833, "name": "address", "nodeType": "ElementaryTypeName", "src": "4038:7:2", @@ -2954,12 +2954,12 @@ }, { "constant": false, - "id": 839, + "id": 836, "mutability": "mutable", "name": "_amount", "nameLocation": "4064:7:2", "nodeType": "VariableDeclaration", - "scope": 854, + "scope": 851, "src": "4056:15:2", "stateVariable": false, "storageLocation": "default", @@ -2968,7 +2968,7 @@ "typeString": "uint256" }, "typeName": { - "id": 838, + "id": 835, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4056:7:2", @@ -2981,12 +2981,12 @@ }, { "constant": false, - "id": 841, + "id": 838, "mutability": "mutable", "name": "_rate", "nameLocation": "4082:5:2", "nodeType": "VariableDeclaration", - "scope": 854, + "scope": 851, "src": "4075:12:2", "stateVariable": false, "storageLocation": "default", @@ -2995,7 +2995,7 @@ "typeString": "uint96" }, "typeName": { - "id": 840, + "id": 837, "name": "uint96", "nodeType": "ElementaryTypeName", "src": "4075:6:2", @@ -3008,12 +3008,12 @@ }, { "constant": false, - "id": 843, + "id": 840, "mutability": "mutable", "name": "_senderFeeRecipient", "nameLocation": "4099:19:2", "nodeType": "VariableDeclaration", - "scope": 854, + "scope": 851, "src": "4091:27:2", "stateVariable": false, "storageLocation": "default", @@ -3022,7 +3022,7 @@ "typeString": "address" }, "typeName": { - "id": 842, + "id": 839, "name": "address", "nodeType": "ElementaryTypeName", "src": "4091:7:2", @@ -3036,12 +3036,12 @@ }, { "constant": false, - "id": 845, + "id": 842, "mutability": "mutable", "name": "_senderFee", "nameLocation": "4130:10:2", "nodeType": "VariableDeclaration", - "scope": 854, + "scope": 851, "src": "4122:18:2", "stateVariable": false, "storageLocation": "default", @@ -3050,7 +3050,7 @@ "typeString": "uint256" }, "typeName": { - "id": 844, + "id": 841, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4122:7:2", @@ -3063,12 +3063,12 @@ }, { "constant": false, - "id": 847, + "id": 844, "mutability": "mutable", "name": "_refundAddress", "nameLocation": "4152:14:2", "nodeType": "VariableDeclaration", - "scope": 854, + "scope": 851, "src": "4144:22:2", "stateVariable": false, "storageLocation": "default", @@ -3077,7 +3077,7 @@ "typeString": "address" }, "typeName": { - "id": 846, + "id": 843, "name": "address", "nodeType": "ElementaryTypeName", "src": "4144:7:2", @@ -3091,12 +3091,12 @@ }, { "constant": false, - "id": 849, + "id": 846, "mutability": "mutable", "name": "messageHash", "nameLocation": "4186:11:2", "nodeType": "VariableDeclaration", - "scope": 854, + "scope": 851, "src": "4170:27:2", "stateVariable": false, "storageLocation": "calldata", @@ -3105,7 +3105,7 @@ "typeString": "string" }, "typeName": { - "id": 848, + "id": 845, "name": "string", "nodeType": "ElementaryTypeName", "src": "4170:6:2", @@ -3120,17 +3120,17 @@ "src": "4034:166:2" }, "returnParameters": { - "id": 853, + "id": 850, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 852, + "id": 849, "mutability": "mutable", "name": "_orderId", "nameLocation": "4227:8:2", "nodeType": "VariableDeclaration", - "scope": 854, + "scope": 851, "src": "4219:16:2", "stateVariable": false, "storageLocation": "default", @@ -3139,7 +3139,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 851, + "id": 848, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "4219:7:2", @@ -3153,7 +3153,7 @@ ], "src": "4218:18:2" }, - "scope": 904, + "scope": 901, "src": "4014:223:2", "stateMutability": "nonpayable", "virtual": false, @@ -3161,13 +3161,13 @@ }, { "documentation": { - "id": 855, + "id": 852, "nodeType": "StructuredDocumentation", "src": "4240:366:2", "text": " @notice Settles a transaction and distributes rewards accordingly.\n @param _splitOrderId The ID of the split order.\n @param _orderId The ID of the transaction.\n @param _liquidityProvider The address of the liquidity provider.\n @param _settlePercent The rate at which the transaction is settled.\n @return bool the settlement is successful." }, "functionSelector": "f22ee704", - "id": 868, + "id": 865, "implemented": false, "kind": "function", "modifiers": [], @@ -3175,17 +3175,17 @@ "nameLocation": "4617:6:2", "nodeType": "FunctionDefinition", "parameters": { - "id": 864, + "id": 861, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 857, + "id": 854, "mutability": "mutable", "name": "_splitOrderId", "nameLocation": "4635:13:2", "nodeType": "VariableDeclaration", - "scope": 868, + "scope": 865, "src": "4627:21:2", "stateVariable": false, "storageLocation": "default", @@ -3194,7 +3194,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 856, + "id": 853, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "4627:7:2", @@ -3207,12 +3207,12 @@ }, { "constant": false, - "id": 859, + "id": 856, "mutability": "mutable", "name": "_orderId", "nameLocation": "4660:8:2", "nodeType": "VariableDeclaration", - "scope": 868, + "scope": 865, "src": "4652:16:2", "stateVariable": false, "storageLocation": "default", @@ -3221,7 +3221,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 858, + "id": 855, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "4652:7:2", @@ -3234,12 +3234,12 @@ }, { "constant": false, - "id": 861, + "id": 858, "mutability": "mutable", "name": "_liquidityProvider", "nameLocation": "4680:18:2", "nodeType": "VariableDeclaration", - "scope": 868, + "scope": 865, "src": "4672:26:2", "stateVariable": false, "storageLocation": "default", @@ -3248,7 +3248,7 @@ "typeString": "address" }, "typeName": { - "id": 860, + "id": 857, "name": "address", "nodeType": "ElementaryTypeName", "src": "4672:7:2", @@ -3262,12 +3262,12 @@ }, { "constant": false, - "id": 863, + "id": 860, "mutability": "mutable", "name": "_settlePercent", "nameLocation": "4709:14:2", "nodeType": "VariableDeclaration", - "scope": 868, + "scope": 865, "src": "4702:21:2", "stateVariable": false, "storageLocation": "default", @@ -3276,7 +3276,7 @@ "typeString": "uint64" }, "typeName": { - "id": 862, + "id": 859, "name": "uint64", "nodeType": "ElementaryTypeName", "src": "4702:6:2", @@ -3291,17 +3291,17 @@ "src": "4623:103:2" }, "returnParameters": { - "id": 867, + "id": 864, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 866, + "id": 863, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 868, + "scope": 865, "src": "4745:4:2", "stateVariable": false, "storageLocation": "default", @@ -3310,7 +3310,7 @@ "typeString": "bool" }, "typeName": { - "id": 865, + "id": 862, "name": "bool", "nodeType": "ElementaryTypeName", "src": "4745:4:2", @@ -3324,7 +3324,7 @@ ], "src": "4744:6:2" }, - "scope": 904, + "scope": 901, "src": "4608:143:2", "stateMutability": "nonpayable", "virtual": false, @@ -3332,13 +3332,13 @@ }, { "documentation": { - "id": 869, + "id": 866, "nodeType": "StructuredDocumentation", "src": "4754:299:2", "text": " @notice Refunds to the specified refundable address.\n @dev Requirements:\n - Only aggregators can call this function.\n @param _fee The amount to be deducted from the amount to be refunded.\n @param _orderId The ID of the transaction.\n @return bool the refund is successful." }, "functionSelector": "71eedb88", - "id": 878, + "id": 875, "implemented": false, "kind": "function", "modifiers": [], @@ -3346,17 +3346,17 @@ "nameLocation": "5064:6:2", "nodeType": "FunctionDefinition", "parameters": { - "id": 874, + "id": 871, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 871, + "id": 868, "mutability": "mutable", "name": "_fee", "nameLocation": "5079:4:2", "nodeType": "VariableDeclaration", - "scope": 878, + "scope": 875, "src": "5071:12:2", "stateVariable": false, "storageLocation": "default", @@ -3365,7 +3365,7 @@ "typeString": "uint256" }, "typeName": { - "id": 870, + "id": 867, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "5071:7:2", @@ -3378,12 +3378,12 @@ }, { "constant": false, - "id": 873, + "id": 870, "mutability": "mutable", "name": "_orderId", "nameLocation": "5093:8:2", "nodeType": "VariableDeclaration", - "scope": 878, + "scope": 875, "src": "5085:16:2", "stateVariable": false, "storageLocation": "default", @@ -3392,7 +3392,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 872, + "id": 869, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "5085:7:2", @@ -3407,17 +3407,17 @@ "src": "5070:32:2" }, "returnParameters": { - "id": 877, + "id": 874, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 876, + "id": 873, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 878, + "scope": 875, "src": "5121:4:2", "stateVariable": false, "storageLocation": "default", @@ -3426,7 +3426,7 @@ "typeString": "bool" }, "typeName": { - "id": 875, + "id": 872, "name": "bool", "nodeType": "ElementaryTypeName", "src": "5121:4:2", @@ -3440,7 +3440,7 @@ ], "src": "5120:6:2" }, - "scope": 904, + "scope": 901, "src": "5055:72:2", "stateMutability": "nonpayable", "virtual": false, @@ -3448,13 +3448,13 @@ }, { "documentation": { - "id": 879, + "id": 876, "nodeType": "StructuredDocumentation", "src": "5130:157:2", "text": " @notice Checks if a token is supported by Gateway.\n @param _token The address of the token to check.\n @return bool the token is supported." }, "functionSelector": "75151b63", - "id": 886, + "id": 883, "implemented": false, "kind": "function", "modifiers": [], @@ -3462,17 +3462,17 @@ "nameLocation": "5298:16:2", "nodeType": "FunctionDefinition", "parameters": { - "id": 882, + "id": 879, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 881, + "id": 878, "mutability": "mutable", "name": "_token", "nameLocation": "5323:6:2", "nodeType": "VariableDeclaration", - "scope": 886, + "scope": 883, "src": "5315:14:2", "stateVariable": false, "storageLocation": "default", @@ -3481,7 +3481,7 @@ "typeString": "address" }, "typeName": { - "id": 880, + "id": 877, "name": "address", "nodeType": "ElementaryTypeName", "src": "5315:7:2", @@ -3497,17 +3497,17 @@ "src": "5314:16:2" }, "returnParameters": { - "id": 885, + "id": 882, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 884, + "id": 881, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 886, + "scope": 883, "src": "5354:4:2", "stateVariable": false, "storageLocation": "default", @@ -3516,7 +3516,7 @@ "typeString": "bool" }, "typeName": { - "id": 883, + "id": 880, "name": "bool", "nodeType": "ElementaryTypeName", "src": "5354:4:2", @@ -3530,7 +3530,7 @@ ], "src": "5353:6:2" }, - "scope": 904, + "scope": 901, "src": "5289:71:2", "stateMutability": "view", "virtual": false, @@ -3538,13 +3538,13 @@ }, { "documentation": { - "id": 887, + "id": 884, "nodeType": "StructuredDocumentation", "src": "5363:128:2", "text": " @notice Gets the details of an order.\n @param _orderId The ID of the order.\n @return Order The order details." }, "functionSelector": "768c6ec0", - "id": 895, + "id": 892, "implemented": false, "kind": "function", "modifiers": [], @@ -3552,17 +3552,17 @@ "nameLocation": "5502:12:2", "nodeType": "FunctionDefinition", "parameters": { - "id": 890, + "id": 887, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 889, + "id": 886, "mutability": "mutable", "name": "_orderId", "nameLocation": "5523:8:2", "nodeType": "VariableDeclaration", - "scope": 895, + "scope": 892, "src": "5515:16:2", "stateVariable": false, "storageLocation": "default", @@ -3571,7 +3571,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 888, + "id": 885, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "5515:7:2", @@ -3586,41 +3586,41 @@ "src": "5514:18:2" }, "returnParameters": { - "id": 894, + "id": 891, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 893, + "id": 890, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 895, + "scope": 892, "src": "5556:12:2", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_memory_ptr", + "typeIdentifier": "t_struct$_Order_$831_memory_ptr", "typeString": "struct IGateway.Order" }, "typeName": { - "id": 892, + "id": 889, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 891, + "id": 888, "name": "Order", "nameLocations": [ "5556:5:2" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 834, + "referencedDeclaration": 831, "src": "5556:5:2" }, - "referencedDeclaration": 834, + "referencedDeclaration": 831, "src": "5556:5:2", "typeDescriptions": { - "typeIdentifier": "t_struct$_Order_$834_storage_ptr", + "typeIdentifier": "t_struct$_Order_$831_storage_ptr", "typeString": "struct IGateway.Order" } }, @@ -3629,7 +3629,7 @@ ], "src": "5555:14:2" }, - "scope": 904, + "scope": 901, "src": "5493:77:2", "stateMutability": "view", "virtual": false, @@ -3637,13 +3637,13 @@ }, { "documentation": { - "id": 896, + "id": 893, "nodeType": "StructuredDocumentation", "src": "5573:154:2", "text": " @notice Gets the fee details of Gateway.\n @return protocolReward The protocol reward amount.\n @return max_bps The maximum basis points." }, "functionSelector": "b810c636", - "id": 903, + "id": 900, "implemented": false, "kind": "function", "modifiers": [], @@ -3651,23 +3651,23 @@ "nameLocation": "5738:13:2", "nodeType": "FunctionDefinition", "parameters": { - "id": 897, + "id": 894, "nodeType": "ParameterList", "parameters": [], "src": "5751:2:2" }, "returnParameters": { - "id": 902, + "id": 899, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 899, + "id": 896, "mutability": "mutable", "name": "protocolReward", "nameLocation": "5784:14:2", "nodeType": "VariableDeclaration", - "scope": 903, + "scope": 900, "src": "5777:21:2", "stateVariable": false, "storageLocation": "default", @@ -3676,7 +3676,7 @@ "typeString": "uint64" }, "typeName": { - "id": 898, + "id": 895, "name": "uint64", "nodeType": "ElementaryTypeName", "src": "5777:6:2", @@ -3689,12 +3689,12 @@ }, { "constant": false, - "id": 901, + "id": 898, "mutability": "mutable", "name": "max_bps", "nameLocation": "5808:7:2", "nodeType": "VariableDeclaration", - "scope": 903, + "scope": 900, "src": "5800:15:2", "stateVariable": false, "storageLocation": "default", @@ -3703,7 +3703,7 @@ "typeString": "uint256" }, "typeName": { - "id": 900, + "id": 897, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "5800:7:2", @@ -3717,14 +3717,14 @@ ], "src": "5776:40:2" }, - "scope": 904, + "scope": 901, "src": "5729:88:2", "stateMutability": "view", "virtual": false, "visibility": "external" } ], - "scope": 905, + "scope": 902, "src": "211:5608:2", "usedErrors": [] } @@ -3737,5 +3737,5 @@ }, "networks": {}, "schemaVersion": "2.0.1", - "updatedAt": "2024-06-20T09:33:52.546Z" + "updatedAt": "2024-06-27T12:24:25.258Z" } \ No newline at end of file diff --git a/build/contracts/Initializable.json b/build/contracts/Initializable.json index 4bc873d..b5e3068 100644 --- a/build/contracts/Initializable.json +++ b/build/contracts/Initializable.json @@ -25,18 +25,18 @@ "absolutePath": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol", "exportedSymbols": { "AddressUpgradeable": [ - 1841 + 1838 ], "Initializable": [ - 1383 + 1380 ] }, - "id": 1384, + "id": 1381, "license": "MIT", "nodeType": "SourceUnit", "nodes": [ { - "id": 1216, + "id": 1213, "literals": [ "solidity", "^", @@ -49,11 +49,11 @@ { "absolutePath": "@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "file": "../../utils/AddressUpgradeable.sol", - "id": 1217, + "id": 1214, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", - "scope": 1384, - "sourceUnit": 1842, + "scope": 1381, + "sourceUnit": 1839, "src": "138:44:6", "symbolAliases": [], "unitAlias": "" @@ -65,15 +65,15 @@ "contractDependencies": [], "contractKind": "contract", "documentation": { - "id": 1218, + "id": 1215, "nodeType": "StructuredDocumentation", "src": "184:2209:6", "text": " @dev This is a base contract to aid in writing upgradeable contracts, or any kind of contract that will be deployed\n behind a proxy. Since proxied contracts do not make use of a constructor, it's common to move constructor logic to an\n external initializer function, usually called `initialize`. It then becomes necessary to protect this initializer\n function so it can only be called once. The {initializer} modifier provided by this contract will have this effect.\n The initialization functions use a version number. Once a version number is used, it is consumed and cannot be\n reused. This mechanism prevents re-execution of each \"step\" but allows the creation of new initialization steps in\n case an upgrade adds a module that needs to be initialized.\n For example:\n [.hljs-theme-light.nopadding]\n ```solidity\n contract MyToken is ERC20Upgradeable {\n function initialize() initializer public {\n __ERC20_init(\"MyToken\", \"MTK\");\n }\n }\n contract MyTokenV2 is MyToken, ERC20PermitUpgradeable {\n function initializeV2() reinitializer(2) public {\n __ERC20Permit_init(\"MyToken\");\n }\n }\n ```\n TIP: To avoid leaving the proxy in an uninitialized state, the initializer function should be called as early as\n possible by providing the encoded function call as the `_data` argument to {ERC1967Proxy-constructor}.\n CAUTION: When used with inheritance, manual care must be taken to not invoke a parent initializer twice, or to ensure\n that all initializers are idempotent. This is not verified automatically as constructors are by Solidity.\n [CAUTION]\n ====\n Avoid leaving a contract uninitialized.\n An uninitialized contract can be taken over by an attacker. This applies to both a proxy and its implementation\n contract, which may impact the proxy. To prevent the implementation contract from being used, you should invoke\n the {_disableInitializers} function in the constructor to automatically lock it when it is deployed:\n [.hljs-theme-light.nopadding]\n ```\n /// @custom:oz-upgrades-unsafe-allow constructor\n constructor() {\n _disableInitializers();\n }\n ```\n ====" }, "fullyImplemented": true, - "id": 1383, + "id": 1380, "linearizedBaseContracts": [ - 1383 + 1380 ], "name": "Initializable", "nameLocation": "2412:13:6", @@ -82,17 +82,17 @@ { "constant": false, "documentation": { - "id": 1219, + "id": 1216, "nodeType": "StructuredDocumentation", "src": "2432:109:6", "text": " @dev Indicates that the contract has been initialized.\n @custom:oz-retyped-from bool" }, - "id": 1221, + "id": 1218, "mutability": "mutable", "name": "_initialized", "nameLocation": "2560:12:6", "nodeType": "VariableDeclaration", - "scope": 1383, + "scope": 1380, "src": "2546:26:6", "stateVariable": true, "storageLocation": "default", @@ -101,7 +101,7 @@ "typeString": "uint8" }, "typeName": { - "id": 1220, + "id": 1217, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "2546:5:6", @@ -115,17 +115,17 @@ { "constant": false, "documentation": { - "id": 1222, + "id": 1219, "nodeType": "StructuredDocumentation", "src": "2579:91:6", "text": " @dev Indicates that the contract is in the process of being initialized." }, - "id": 1224, + "id": 1221, "mutability": "mutable", "name": "_initializing", "nameLocation": "2688:13:6", "nodeType": "VariableDeclaration", - "scope": 1383, + "scope": 1380, "src": "2675:26:6", "stateVariable": true, "storageLocation": "default", @@ -134,7 +134,7 @@ "typeString": "bool" }, "typeName": { - "id": 1223, + "id": 1220, "name": "bool", "nodeType": "ElementaryTypeName", "src": "2675:4:6", @@ -148,29 +148,29 @@ { "anonymous": false, "documentation": { - "id": 1225, + "id": 1222, "nodeType": "StructuredDocumentation", "src": "2708:90:6", "text": " @dev Triggered when the contract has been initialized or reinitialized." }, "eventSelector": "7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498", - "id": 1229, + "id": 1226, "name": "Initialized", "nameLocation": "2809:11:6", "nodeType": "EventDefinition", "parameters": { - "id": 1228, + "id": 1225, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1227, + "id": 1224, "indexed": false, "mutability": "mutable", "name": "version", "nameLocation": "2827:7:6", "nodeType": "VariableDeclaration", - "scope": 1229, + "scope": 1226, "src": "2821:13:6", "stateVariable": false, "storageLocation": "default", @@ -179,7 +179,7 @@ "typeString": "uint8" }, "typeName": { - "id": 1226, + "id": 1223, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "2821:5:6", @@ -197,23 +197,23 @@ }, { "body": { - "id": 1284, + "id": 1281, "nodeType": "Block", "src": "3269:483:6", "statements": [ { "assignments": [ - 1233 + 1230 ], "declarations": [ { "constant": false, - "id": 1233, + "id": 1230, "mutability": "mutable", "name": "isTopLevelCall", "nameLocation": "3284:14:6", "nodeType": "VariableDeclaration", - "scope": 1284, + "scope": 1281, "src": "3279:19:6", "stateVariable": false, "storageLocation": "default", @@ -222,7 +222,7 @@ "typeString": "bool" }, "typeName": { - "id": 1232, + "id": 1229, "name": "bool", "nodeType": "ElementaryTypeName", "src": "3279:4:6", @@ -234,9 +234,9 @@ "visibility": "internal" } ], - "id": 1236, + "id": 1233, "initialValue": { - "id": 1235, + "id": 1232, "isConstant": false, "isLValue": false, "isPure": false, @@ -246,11 +246,11 @@ "prefix": true, "src": "3301:14:6", "subExpression": { - "id": 1234, + "id": 1231, "name": "_initializing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1224, + "referencedDeclaration": 1221, "src": "3302:13:6", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -273,7 +273,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 1257, + "id": 1254, "isConstant": false, "isLValue": false, "isPure": false, @@ -285,17 +285,17 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 1242, + "id": 1239, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 1238, + "id": 1235, "name": "isTopLevelCall", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1233, + "referencedDeclaration": 1230, "src": "3347:14:6", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -309,17 +309,17 @@ "typeIdentifier": "t_uint8", "typeString": "uint8" }, - "id": 1241, + "id": 1238, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 1239, + "id": 1236, "name": "_initialized", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1221, + "referencedDeclaration": 1218, "src": "3365:12:6", "typeDescriptions": { "typeIdentifier": "t_uint8", @@ -330,7 +330,7 @@ "operator": "<", "rightExpression": { "hexValue": "31", - "id": 1240, + "id": 1237, "isConstant": false, "isLValue": false, "isPure": true, @@ -357,7 +357,7 @@ } } ], - "id": 1243, + "id": 1240, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -379,13 +379,13 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 1255, + "id": 1252, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 1251, + "id": 1248, "isConstant": false, "isLValue": false, "isPure": false, @@ -399,14 +399,14 @@ { "arguments": [ { - "id": 1248, + "id": 1245, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967268, "src": "3426:4:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_Initializable_$1383", + "typeIdentifier": "t_contract$_Initializable_$1380", "typeString": "contract Initializable" } } @@ -414,11 +414,11 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Initializable_$1383", + "typeIdentifier": "t_contract$_Initializable_$1380", "typeString": "contract Initializable" } ], - "id": 1247, + "id": 1244, "isConstant": false, "isLValue": false, "isPure": true, @@ -430,14 +430,14 @@ "typeString": "type(address)" }, "typeName": { - "id": 1246, + "id": 1243, "name": "address", "nodeType": "ElementaryTypeName", "src": "3418:7:6", "typeDescriptions": {} } }, - "id": 1249, + "id": 1246, "isConstant": false, "isLValue": false, "isPure": false, @@ -462,18 +462,18 @@ } ], "expression": { - "id": 1244, + "id": 1241, "name": "AddressUpgradeable", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1841, + "referencedDeclaration": 1838, "src": "3388:18:6", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_AddressUpgradeable_$1841_$", + "typeIdentifier": "t_type$_t_contract$_AddressUpgradeable_$1838_$", "typeString": "type(library AddressUpgradeable)" } }, - "id": 1245, + "id": 1242, "isConstant": false, "isLValue": false, "isPure": false, @@ -481,14 +481,14 @@ "memberLocation": "3407:10:6", "memberName": "isContract", "nodeType": "MemberAccess", - "referencedDeclaration": 1529, + "referencedDeclaration": 1526, "src": "3388:29:6", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", "typeString": "function (address) view returns (bool)" } }, - "id": 1250, + "id": 1247, "isConstant": false, "isLValue": false, "isPure": false, @@ -516,17 +516,17 @@ "typeIdentifier": "t_uint8", "typeString": "uint8" }, - "id": 1254, + "id": 1251, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 1252, + "id": 1249, "name": "_initialized", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1221, + "referencedDeclaration": 1218, "src": "3436:12:6", "typeDescriptions": { "typeIdentifier": "t_uint8", @@ -537,7 +537,7 @@ "operator": "==", "rightExpression": { "hexValue": "31", - "id": 1253, + "id": 1250, "isConstant": false, "isLValue": false, "isPure": true, @@ -564,7 +564,7 @@ } } ], - "id": 1256, + "id": 1253, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -585,7 +585,7 @@ }, { "hexValue": "496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a6564", - "id": 1258, + "id": 1255, "isConstant": false, "isLValue": false, "isPure": true, @@ -611,7 +611,7 @@ "typeString": "literal_string \"Initializable: contract is already initialized\"" } ], - "id": 1237, + "id": 1234, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -625,7 +625,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 1259, + "id": 1256, "isConstant": false, "isLValue": false, "isPure": false, @@ -641,23 +641,23 @@ "typeString": "tuple()" } }, - "id": 1260, + "id": 1257, "nodeType": "ExpressionStatement", "src": "3325:201:6" }, { "expression": { - "id": 1263, + "id": 1260, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 1261, + "id": 1258, "name": "_initialized", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1221, + "referencedDeclaration": 1218, "src": "3536:12:6", "typeDescriptions": { "typeIdentifier": "t_uint8", @@ -668,7 +668,7 @@ "operator": "=", "rightHandSide": { "hexValue": "31", - "id": 1262, + "id": 1259, "isConstant": false, "isLValue": false, "isPure": true, @@ -688,44 +688,44 @@ "typeString": "uint8" } }, - "id": 1264, + "id": 1261, "nodeType": "ExpressionStatement", "src": "3536:16:6" }, { "condition": { - "id": 1265, + "id": 1262, "name": "isTopLevelCall", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1233, + "referencedDeclaration": 1230, "src": "3566:14:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 1271, + "id": 1268, "nodeType": "IfStatement", "src": "3562:65:6", "trueBody": { - "id": 1270, + "id": 1267, "nodeType": "Block", "src": "3582:45:6", "statements": [ { "expression": { - "id": 1268, + "id": 1265, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 1266, + "id": 1263, "name": "_initializing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1224, + "referencedDeclaration": 1221, "src": "3596:13:6", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -736,7 +736,7 @@ "operator": "=", "rightHandSide": { "hexValue": "74727565", - "id": 1267, + "id": 1264, "isConstant": false, "isLValue": false, "isPure": true, @@ -756,7 +756,7 @@ "typeString": "bool" } }, - "id": 1269, + "id": 1266, "nodeType": "ExpressionStatement", "src": "3596:20:6" } @@ -764,44 +764,44 @@ } }, { - "id": 1272, + "id": 1269, "nodeType": "PlaceholderStatement", "src": "3636:1:6" }, { "condition": { - "id": 1273, + "id": 1270, "name": "isTopLevelCall", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1233, + "referencedDeclaration": 1230, "src": "3651:14:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 1283, + "id": 1280, "nodeType": "IfStatement", "src": "3647:99:6", "trueBody": { - "id": 1282, + "id": 1279, "nodeType": "Block", "src": "3667:79:6", "statements": [ { "expression": { - "id": 1276, + "id": 1273, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 1274, + "id": 1271, "name": "_initializing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1224, + "referencedDeclaration": 1221, "src": "3681:13:6", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -812,7 +812,7 @@ "operator": "=", "rightHandSide": { "hexValue": "66616c7365", - "id": 1275, + "id": 1272, "isConstant": false, "isLValue": false, "isPure": true, @@ -832,7 +832,7 @@ "typeString": "bool" } }, - "id": 1277, + "id": 1274, "nodeType": "ExpressionStatement", "src": "3681:21:6" }, @@ -841,7 +841,7 @@ "arguments": [ { "hexValue": "31", - "id": 1279, + "id": 1276, "isConstant": false, "isLValue": false, "isPure": true, @@ -863,18 +863,18 @@ "typeString": "int_const 1" } ], - "id": 1278, + "id": 1275, "name": "Initialized", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1229, + "referencedDeclaration": 1226, "src": "3721:11:6", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_uint8_$returns$__$", "typeString": "function (uint8)" } }, - "id": 1280, + "id": 1277, "isConstant": false, "isLValue": false, "isPure": false, @@ -890,7 +890,7 @@ "typeString": "tuple()" } }, - "id": 1281, + "id": 1278, "nodeType": "EmitStatement", "src": "3716:19:6" } @@ -900,17 +900,17 @@ ] }, "documentation": { - "id": 1230, + "id": 1227, "nodeType": "StructuredDocumentation", "src": "2842:399:6", "text": " @dev A modifier that defines a protected initializer function that can be invoked at most once. In its scope,\n `onlyInitializing` functions can be used to initialize parent contracts.\n Similar to `reinitializer(1)`, except that functions marked with `initializer` can be nested in the context of a\n constructor.\n Emits an {Initialized} event." }, - "id": 1285, + "id": 1282, "name": "initializer", "nameLocation": "3255:11:6", "nodeType": "ModifierDefinition", "parameters": { - "id": 1231, + "id": 1228, "nodeType": "ParameterList", "parameters": [], "src": "3266:2:6" @@ -921,7 +921,7 @@ }, { "body": { - "id": 1317, + "id": 1314, "nodeType": "Block", "src": "4863:255:6", "statements": [ @@ -933,13 +933,13 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 1296, + "id": 1293, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 1292, + "id": 1289, "isConstant": false, "isLValue": false, "isPure": false, @@ -949,11 +949,11 @@ "prefix": true, "src": "4881:14:6", "subExpression": { - "id": 1291, + "id": 1288, "name": "_initializing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1224, + "referencedDeclaration": 1221, "src": "4882:13:6", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -972,17 +972,17 @@ "typeIdentifier": "t_uint8", "typeString": "uint8" }, - "id": 1295, + "id": 1292, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 1293, + "id": 1290, "name": "_initialized", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1221, + "referencedDeclaration": 1218, "src": "4899:12:6", "typeDescriptions": { "typeIdentifier": "t_uint8", @@ -992,11 +992,11 @@ "nodeType": "BinaryOperation", "operator": "<", "rightExpression": { - "id": 1294, + "id": 1291, "name": "version", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1288, + "referencedDeclaration": 1285, "src": "4914:7:6", "typeDescriptions": { "typeIdentifier": "t_uint8", @@ -1017,7 +1017,7 @@ }, { "hexValue": "496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a6564", - "id": 1297, + "id": 1294, "isConstant": false, "isLValue": false, "isPure": true, @@ -1043,7 +1043,7 @@ "typeString": "literal_string \"Initializable: contract is already initialized\"" } ], - "id": 1290, + "id": 1287, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -1057,7 +1057,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 1298, + "id": 1295, "isConstant": false, "isLValue": false, "isPure": false, @@ -1073,23 +1073,23 @@ "typeString": "tuple()" } }, - "id": 1299, + "id": 1296, "nodeType": "ExpressionStatement", "src": "4873:99:6" }, { "expression": { - "id": 1302, + "id": 1299, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 1300, + "id": 1297, "name": "_initialized", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1221, + "referencedDeclaration": 1218, "src": "4982:12:6", "typeDescriptions": { "typeIdentifier": "t_uint8", @@ -1099,11 +1099,11 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 1301, + "id": 1298, "name": "version", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1288, + "referencedDeclaration": 1285, "src": "4997:7:6", "typeDescriptions": { "typeIdentifier": "t_uint8", @@ -1116,23 +1116,23 @@ "typeString": "uint8" } }, - "id": 1303, + "id": 1300, "nodeType": "ExpressionStatement", "src": "4982:22:6" }, { "expression": { - "id": 1306, + "id": 1303, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 1304, + "id": 1301, "name": "_initializing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1224, + "referencedDeclaration": 1221, "src": "5014:13:6", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -1143,7 +1143,7 @@ "operator": "=", "rightHandSide": { "hexValue": "74727565", - "id": 1305, + "id": 1302, "isConstant": false, "isLValue": false, "isPure": true, @@ -1163,28 +1163,28 @@ "typeString": "bool" } }, - "id": 1307, + "id": 1304, "nodeType": "ExpressionStatement", "src": "5014:20:6" }, { - "id": 1308, + "id": 1305, "nodeType": "PlaceholderStatement", "src": "5044:1:6" }, { "expression": { - "id": 1311, + "id": 1308, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 1309, + "id": 1306, "name": "_initializing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1224, + "referencedDeclaration": 1221, "src": "5055:13:6", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -1195,7 +1195,7 @@ "operator": "=", "rightHandSide": { "hexValue": "66616c7365", - "id": 1310, + "id": 1307, "isConstant": false, "isLValue": false, "isPure": true, @@ -1215,7 +1215,7 @@ "typeString": "bool" } }, - "id": 1312, + "id": 1309, "nodeType": "ExpressionStatement", "src": "5055:21:6" }, @@ -1223,11 +1223,11 @@ "eventCall": { "arguments": [ { - "id": 1314, + "id": 1311, "name": "version", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1288, + "referencedDeclaration": 1285, "src": "5103:7:6", "typeDescriptions": { "typeIdentifier": "t_uint8", @@ -1242,18 +1242,18 @@ "typeString": "uint8" } ], - "id": 1313, + "id": 1310, "name": "Initialized", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1229, + "referencedDeclaration": 1226, "src": "5091:11:6", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_uint8_$returns$__$", "typeString": "function (uint8)" } }, - "id": 1315, + "id": 1312, "isConstant": false, "isLValue": false, "isPure": false, @@ -1269,34 +1269,34 @@ "typeString": "tuple()" } }, - "id": 1316, + "id": 1313, "nodeType": "EmitStatement", "src": "5086:25:6" } ] }, "documentation": { - "id": 1286, + "id": 1283, "nodeType": "StructuredDocumentation", "src": "3758:1062:6", "text": " @dev A modifier that defines a protected reinitializer function that can be invoked at most once, and only if the\n contract hasn't been initialized to a greater version before. In its scope, `onlyInitializing` functions can be\n used to initialize parent contracts.\n A reinitializer may be used after the original initialization step. This is essential to configure modules that\n are added through upgrades and that require initialization.\n When `version` is 1, this modifier is similar to `initializer`, except that functions marked with `reinitializer`\n cannot be nested. If one is invoked in the context of another, execution will revert.\n Note that versions can jump in increments greater than 1; this implies that if multiple reinitializers coexist in\n a contract, executing them in the right order is up to the developer or operator.\n WARNING: setting the version to 255 will prevent any future reinitialization.\n Emits an {Initialized} event." }, - "id": 1318, + "id": 1315, "name": "reinitializer", "nameLocation": "4834:13:6", "nodeType": "ModifierDefinition", "parameters": { - "id": 1289, + "id": 1286, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1288, + "id": 1285, "mutability": "mutable", "name": "version", "nameLocation": "4854:7:6", "nodeType": "VariableDeclaration", - "scope": 1318, + "scope": 1315, "src": "4848:13:6", "stateVariable": false, "storageLocation": "default", @@ -1305,7 +1305,7 @@ "typeString": "uint8" }, "typeName": { - "id": 1287, + "id": 1284, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "4848:5:6", @@ -1325,7 +1325,7 @@ }, { "body": { - "id": 1327, + "id": 1324, "nodeType": "Block", "src": "5356:97:6", "statements": [ @@ -1333,11 +1333,11 @@ "expression": { "arguments": [ { - "id": 1322, + "id": 1319, "name": "_initializing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1224, + "referencedDeclaration": 1221, "src": "5374:13:6", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -1346,7 +1346,7 @@ }, { "hexValue": "496e697469616c697a61626c653a20636f6e7472616374206973206e6f7420696e697469616c697a696e67", - "id": 1323, + "id": 1320, "isConstant": false, "isLValue": false, "isPure": true, @@ -1372,7 +1372,7 @@ "typeString": "literal_string \"Initializable: contract is not initializing\"" } ], - "id": 1321, + "id": 1318, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -1386,7 +1386,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 1324, + "id": 1321, "isConstant": false, "isLValue": false, "isPure": false, @@ -1402,29 +1402,29 @@ "typeString": "tuple()" } }, - "id": 1325, + "id": 1322, "nodeType": "ExpressionStatement", "src": "5366:69:6" }, { - "id": 1326, + "id": 1323, "nodeType": "PlaceholderStatement", "src": "5445:1:6" } ] }, "documentation": { - "id": 1319, + "id": 1316, "nodeType": "StructuredDocumentation", "src": "5124:199:6", "text": " @dev Modifier to protect an initialization function so that it can only be invoked by functions with the\n {initializer} and {reinitializer} modifiers, directly or indirectly." }, - "id": 1328, + "id": 1325, "name": "onlyInitializing", "nameLocation": "5337:16:6", "nodeType": "ModifierDefinition", "parameters": { - "id": 1320, + "id": 1317, "nodeType": "ParameterList", "parameters": [], "src": "5353:2:6" @@ -1435,7 +1435,7 @@ }, { "body": { - "id": 1363, + "id": 1360, "nodeType": "Block", "src": "5988:231:6", "statements": [ @@ -1443,7 +1443,7 @@ "expression": { "arguments": [ { - "id": 1334, + "id": 1331, "isConstant": false, "isLValue": false, "isPure": false, @@ -1453,11 +1453,11 @@ "prefix": true, "src": "6006:14:6", "subExpression": { - "id": 1333, + "id": 1330, "name": "_initializing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1224, + "referencedDeclaration": 1221, "src": "6007:13:6", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -1471,7 +1471,7 @@ }, { "hexValue": "496e697469616c697a61626c653a20636f6e747261637420697320696e697469616c697a696e67", - "id": 1335, + "id": 1332, "isConstant": false, "isLValue": false, "isPure": true, @@ -1497,7 +1497,7 @@ "typeString": "literal_string \"Initializable: contract is initializing\"" } ], - "id": 1332, + "id": 1329, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -1511,7 +1511,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 1336, + "id": 1333, "isConstant": false, "isLValue": false, "isPure": false, @@ -1527,7 +1527,7 @@ "typeString": "tuple()" } }, - "id": 1337, + "id": 1334, "nodeType": "ExpressionStatement", "src": "5998:66:6" }, @@ -1537,17 +1537,17 @@ "typeIdentifier": "t_uint8", "typeString": "uint8" }, - "id": 1344, + "id": 1341, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 1338, + "id": 1335, "name": "_initialized", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1221, + "referencedDeclaration": 1218, "src": "6078:12:6", "typeDescriptions": { "typeIdentifier": "t_uint8", @@ -1560,7 +1560,7 @@ "expression": { "arguments": [ { - "id": 1341, + "id": 1338, "isConstant": false, "isLValue": false, "isPure": true, @@ -1572,7 +1572,7 @@ "typeString": "type(uint8)" }, "typeName": { - "id": 1340, + "id": 1337, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "6099:5:6", @@ -1587,7 +1587,7 @@ "typeString": "type(uint8)" } ], - "id": 1339, + "id": 1336, "name": "type", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -1598,7 +1598,7 @@ "typeString": "function () pure" } }, - "id": 1342, + "id": 1339, "isConstant": false, "isLValue": false, "isPure": true, @@ -1614,7 +1614,7 @@ "typeString": "type(uint8)" } }, - "id": 1343, + "id": 1340, "isConstant": false, "isLValue": false, "isPure": true, @@ -1634,27 +1634,27 @@ "typeString": "bool" } }, - "id": 1362, + "id": 1359, "nodeType": "IfStatement", "src": "6074:139:6", "trueBody": { - "id": 1361, + "id": 1358, "nodeType": "Block", "src": "6111:102:6", "statements": [ { "expression": { - "id": 1351, + "id": 1348, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 1345, + "id": 1342, "name": "_initialized", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1221, + "referencedDeclaration": 1218, "src": "6125:12:6", "typeDescriptions": { "typeIdentifier": "t_uint8", @@ -1667,7 +1667,7 @@ "expression": { "arguments": [ { - "id": 1348, + "id": 1345, "isConstant": false, "isLValue": false, "isPure": true, @@ -1679,7 +1679,7 @@ "typeString": "type(uint8)" }, "typeName": { - "id": 1347, + "id": 1344, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "6145:5:6", @@ -1694,7 +1694,7 @@ "typeString": "type(uint8)" } ], - "id": 1346, + "id": 1343, "name": "type", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -1705,7 +1705,7 @@ "typeString": "function () pure" } }, - "id": 1349, + "id": 1346, "isConstant": false, "isLValue": false, "isPure": true, @@ -1721,7 +1721,7 @@ "typeString": "type(uint8)" } }, - "id": 1350, + "id": 1347, "isConstant": false, "isLValue": false, "isPure": true, @@ -1741,7 +1741,7 @@ "typeString": "uint8" } }, - "id": 1352, + "id": 1349, "nodeType": "ExpressionStatement", "src": "6125:30:6" }, @@ -1752,7 +1752,7 @@ "expression": { "arguments": [ { - "id": 1356, + "id": 1353, "isConstant": false, "isLValue": false, "isPure": true, @@ -1764,7 +1764,7 @@ "typeString": "type(uint8)" }, "typeName": { - "id": 1355, + "id": 1352, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "6191:5:6", @@ -1779,7 +1779,7 @@ "typeString": "type(uint8)" } ], - "id": 1354, + "id": 1351, "name": "type", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -1790,7 +1790,7 @@ "typeString": "function () pure" } }, - "id": 1357, + "id": 1354, "isConstant": false, "isLValue": false, "isPure": true, @@ -1806,7 +1806,7 @@ "typeString": "type(uint8)" } }, - "id": 1358, + "id": 1355, "isConstant": false, "isLValue": false, "isPure": true, @@ -1828,18 +1828,18 @@ "typeString": "uint8" } ], - "id": 1353, + "id": 1350, "name": "Initialized", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1229, + "referencedDeclaration": 1226, "src": "6174:11:6", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_uint8_$returns$__$", "typeString": "function (uint8)" } }, - "id": 1359, + "id": 1356, "isConstant": false, "isLValue": false, "isPure": false, @@ -1855,7 +1855,7 @@ "typeString": "tuple()" } }, - "id": 1360, + "id": 1357, "nodeType": "EmitStatement", "src": "6169:33:6" } @@ -1865,12 +1865,12 @@ ] }, "documentation": { - "id": 1329, + "id": 1326, "nodeType": "StructuredDocumentation", "src": "5459:475:6", "text": " @dev Locks the contract, preventing any future reinitialization. This cannot be part of an initializer call.\n Calling this in the constructor of a contract will prevent that contract from being initialized or reinitialized\n to any version. It is recommended to use this to lock implementation contracts that are designed to be called\n through proxies.\n Emits an {Initialized} event the first time it is successfully executed." }, - "id": 1364, + "id": 1361, "implemented": true, "kind": "function", "modifiers": [], @@ -1878,18 +1878,18 @@ "nameLocation": "5948:20:6", "nodeType": "FunctionDefinition", "parameters": { - "id": 1330, + "id": 1327, "nodeType": "ParameterList", "parameters": [], "src": "5968:2:6" }, "returnParameters": { - "id": 1331, + "id": 1328, "nodeType": "ParameterList", "parameters": [], "src": "5988:0:6" }, - "scope": 1383, + "scope": 1380, "src": "5939:280:6", "stateMutability": "nonpayable", "virtual": true, @@ -1897,37 +1897,37 @@ }, { "body": { - "id": 1372, + "id": 1369, "nodeType": "Block", "src": "6393:36:6", "statements": [ { "expression": { - "id": 1370, + "id": 1367, "name": "_initialized", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1221, + "referencedDeclaration": 1218, "src": "6410:12:6", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" } }, - "functionReturnParameters": 1369, - "id": 1371, + "functionReturnParameters": 1366, + "id": 1368, "nodeType": "Return", "src": "6403:19:6" } ] }, "documentation": { - "id": 1365, + "id": 1362, "nodeType": "StructuredDocumentation", "src": "6225:99:6", "text": " @dev Returns the highest version that has been initialized. See {reinitializer}." }, - "id": 1373, + "id": 1370, "implemented": true, "kind": "function", "modifiers": [], @@ -1935,23 +1935,23 @@ "nameLocation": "6338:22:6", "nodeType": "FunctionDefinition", "parameters": { - "id": 1366, + "id": 1363, "nodeType": "ParameterList", "parameters": [], "src": "6360:2:6" }, "returnParameters": { - "id": 1369, + "id": 1366, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1368, + "id": 1365, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 1373, + "scope": 1370, "src": "6386:5:6", "stateVariable": false, "storageLocation": "default", @@ -1960,7 +1960,7 @@ "typeString": "uint8" }, "typeName": { - "id": 1367, + "id": 1364, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "6386:5:6", @@ -1974,7 +1974,7 @@ ], "src": "6385:7:6" }, - "scope": 1383, + "scope": 1380, "src": "6329:100:6", "stateMutability": "view", "virtual": false, @@ -1982,37 +1982,37 @@ }, { "body": { - "id": 1381, + "id": 1378, "nodeType": "Block", "src": "6601:37:6", "statements": [ { "expression": { - "id": 1379, + "id": 1376, "name": "_initializing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1224, + "referencedDeclaration": 1221, "src": "6618:13:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 1378, - "id": 1380, + "functionReturnParameters": 1375, + "id": 1377, "nodeType": "Return", "src": "6611:20:6" } ] }, "documentation": { - "id": 1374, + "id": 1371, "nodeType": "StructuredDocumentation", "src": "6435:105:6", "text": " @dev Returns `true` if the contract is currently initializing. See {onlyInitializing}." }, - "id": 1382, + "id": 1379, "implemented": true, "kind": "function", "modifiers": [], @@ -2020,23 +2020,23 @@ "nameLocation": "6554:15:6", "nodeType": "FunctionDefinition", "parameters": { - "id": 1375, + "id": 1372, "nodeType": "ParameterList", "parameters": [], "src": "6569:2:6" }, "returnParameters": { - "id": 1378, + "id": 1375, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1377, + "id": 1374, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 1382, + "scope": 1379, "src": "6595:4:6", "stateVariable": false, "storageLocation": "default", @@ -2045,7 +2045,7 @@ "typeString": "bool" }, "typeName": { - "id": 1376, + "id": 1373, "name": "bool", "nodeType": "ElementaryTypeName", "src": "6595:4:6", @@ -2059,14 +2059,14 @@ ], "src": "6594:6:6" }, - "scope": 1383, + "scope": 1380, "src": "6545:93:6", "stateMutability": "view", "virtual": false, "visibility": "internal" } ], - "scope": 1384, + "scope": 1381, "src": "2394:4246:6", "usedErrors": [] } @@ -2077,18 +2077,18 @@ "absolutePath": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol", "exportedSymbols": { "AddressUpgradeable": [ - 1841 + 1838 ], "Initializable": [ - 1383 + 1380 ] }, - "id": 1384, + "id": 1381, "license": "MIT", "nodeType": "SourceUnit", "nodes": [ { - "id": 1216, + "id": 1213, "literals": [ "solidity", "^", @@ -2101,11 +2101,11 @@ { "absolutePath": "@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol", "file": "../../utils/AddressUpgradeable.sol", - "id": 1217, + "id": 1214, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", - "scope": 1384, - "sourceUnit": 1842, + "scope": 1381, + "sourceUnit": 1839, "src": "138:44:6", "symbolAliases": [], "unitAlias": "" @@ -2117,15 +2117,15 @@ "contractDependencies": [], "contractKind": "contract", "documentation": { - "id": 1218, + "id": 1215, "nodeType": "StructuredDocumentation", "src": "184:2209:6", "text": " @dev This is a base contract to aid in writing upgradeable contracts, or any kind of contract that will be deployed\n behind a proxy. Since proxied contracts do not make use of a constructor, it's common to move constructor logic to an\n external initializer function, usually called `initialize`. It then becomes necessary to protect this initializer\n function so it can only be called once. The {initializer} modifier provided by this contract will have this effect.\n The initialization functions use a version number. Once a version number is used, it is consumed and cannot be\n reused. This mechanism prevents re-execution of each \"step\" but allows the creation of new initialization steps in\n case an upgrade adds a module that needs to be initialized.\n For example:\n [.hljs-theme-light.nopadding]\n ```solidity\n contract MyToken is ERC20Upgradeable {\n function initialize() initializer public {\n __ERC20_init(\"MyToken\", \"MTK\");\n }\n }\n contract MyTokenV2 is MyToken, ERC20PermitUpgradeable {\n function initializeV2() reinitializer(2) public {\n __ERC20Permit_init(\"MyToken\");\n }\n }\n ```\n TIP: To avoid leaving the proxy in an uninitialized state, the initializer function should be called as early as\n possible by providing the encoded function call as the `_data` argument to {ERC1967Proxy-constructor}.\n CAUTION: When used with inheritance, manual care must be taken to not invoke a parent initializer twice, or to ensure\n that all initializers are idempotent. This is not verified automatically as constructors are by Solidity.\n [CAUTION]\n ====\n Avoid leaving a contract uninitialized.\n An uninitialized contract can be taken over by an attacker. This applies to both a proxy and its implementation\n contract, which may impact the proxy. To prevent the implementation contract from being used, you should invoke\n the {_disableInitializers} function in the constructor to automatically lock it when it is deployed:\n [.hljs-theme-light.nopadding]\n ```\n /// @custom:oz-upgrades-unsafe-allow constructor\n constructor() {\n _disableInitializers();\n }\n ```\n ====" }, "fullyImplemented": true, - "id": 1383, + "id": 1380, "linearizedBaseContracts": [ - 1383 + 1380 ], "name": "Initializable", "nameLocation": "2412:13:6", @@ -2134,17 +2134,17 @@ { "constant": false, "documentation": { - "id": 1219, + "id": 1216, "nodeType": "StructuredDocumentation", "src": "2432:109:6", "text": " @dev Indicates that the contract has been initialized.\n @custom:oz-retyped-from bool" }, - "id": 1221, + "id": 1218, "mutability": "mutable", "name": "_initialized", "nameLocation": "2560:12:6", "nodeType": "VariableDeclaration", - "scope": 1383, + "scope": 1380, "src": "2546:26:6", "stateVariable": true, "storageLocation": "default", @@ -2153,7 +2153,7 @@ "typeString": "uint8" }, "typeName": { - "id": 1220, + "id": 1217, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "2546:5:6", @@ -2167,17 +2167,17 @@ { "constant": false, "documentation": { - "id": 1222, + "id": 1219, "nodeType": "StructuredDocumentation", "src": "2579:91:6", "text": " @dev Indicates that the contract is in the process of being initialized." }, - "id": 1224, + "id": 1221, "mutability": "mutable", "name": "_initializing", "nameLocation": "2688:13:6", "nodeType": "VariableDeclaration", - "scope": 1383, + "scope": 1380, "src": "2675:26:6", "stateVariable": true, "storageLocation": "default", @@ -2186,7 +2186,7 @@ "typeString": "bool" }, "typeName": { - "id": 1223, + "id": 1220, "name": "bool", "nodeType": "ElementaryTypeName", "src": "2675:4:6", @@ -2200,29 +2200,29 @@ { "anonymous": false, "documentation": { - "id": 1225, + "id": 1222, "nodeType": "StructuredDocumentation", "src": "2708:90:6", "text": " @dev Triggered when the contract has been initialized or reinitialized." }, "eventSelector": "7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498", - "id": 1229, + "id": 1226, "name": "Initialized", "nameLocation": "2809:11:6", "nodeType": "EventDefinition", "parameters": { - "id": 1228, + "id": 1225, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1227, + "id": 1224, "indexed": false, "mutability": "mutable", "name": "version", "nameLocation": "2827:7:6", "nodeType": "VariableDeclaration", - "scope": 1229, + "scope": 1226, "src": "2821:13:6", "stateVariable": false, "storageLocation": "default", @@ -2231,7 +2231,7 @@ "typeString": "uint8" }, "typeName": { - "id": 1226, + "id": 1223, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "2821:5:6", @@ -2249,23 +2249,23 @@ }, { "body": { - "id": 1284, + "id": 1281, "nodeType": "Block", "src": "3269:483:6", "statements": [ { "assignments": [ - 1233 + 1230 ], "declarations": [ { "constant": false, - "id": 1233, + "id": 1230, "mutability": "mutable", "name": "isTopLevelCall", "nameLocation": "3284:14:6", "nodeType": "VariableDeclaration", - "scope": 1284, + "scope": 1281, "src": "3279:19:6", "stateVariable": false, "storageLocation": "default", @@ -2274,7 +2274,7 @@ "typeString": "bool" }, "typeName": { - "id": 1232, + "id": 1229, "name": "bool", "nodeType": "ElementaryTypeName", "src": "3279:4:6", @@ -2286,9 +2286,9 @@ "visibility": "internal" } ], - "id": 1236, + "id": 1233, "initialValue": { - "id": 1235, + "id": 1232, "isConstant": false, "isLValue": false, "isPure": false, @@ -2298,11 +2298,11 @@ "prefix": true, "src": "3301:14:6", "subExpression": { - "id": 1234, + "id": 1231, "name": "_initializing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1224, + "referencedDeclaration": 1221, "src": "3302:13:6", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -2325,7 +2325,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 1257, + "id": 1254, "isConstant": false, "isLValue": false, "isPure": false, @@ -2337,17 +2337,17 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 1242, + "id": 1239, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 1238, + "id": 1235, "name": "isTopLevelCall", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1233, + "referencedDeclaration": 1230, "src": "3347:14:6", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -2361,17 +2361,17 @@ "typeIdentifier": "t_uint8", "typeString": "uint8" }, - "id": 1241, + "id": 1238, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 1239, + "id": 1236, "name": "_initialized", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1221, + "referencedDeclaration": 1218, "src": "3365:12:6", "typeDescriptions": { "typeIdentifier": "t_uint8", @@ -2382,7 +2382,7 @@ "operator": "<", "rightExpression": { "hexValue": "31", - "id": 1240, + "id": 1237, "isConstant": false, "isLValue": false, "isPure": true, @@ -2409,7 +2409,7 @@ } } ], - "id": 1243, + "id": 1240, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -2431,13 +2431,13 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 1255, + "id": 1252, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 1251, + "id": 1248, "isConstant": false, "isLValue": false, "isPure": false, @@ -2451,14 +2451,14 @@ { "arguments": [ { - "id": 1248, + "id": 1245, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967268, "src": "3426:4:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_Initializable_$1383", + "typeIdentifier": "t_contract$_Initializable_$1380", "typeString": "contract Initializable" } } @@ -2466,11 +2466,11 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Initializable_$1383", + "typeIdentifier": "t_contract$_Initializable_$1380", "typeString": "contract Initializable" } ], - "id": 1247, + "id": 1244, "isConstant": false, "isLValue": false, "isPure": true, @@ -2482,14 +2482,14 @@ "typeString": "type(address)" }, "typeName": { - "id": 1246, + "id": 1243, "name": "address", "nodeType": "ElementaryTypeName", "src": "3418:7:6", "typeDescriptions": {} } }, - "id": 1249, + "id": 1246, "isConstant": false, "isLValue": false, "isPure": false, @@ -2514,18 +2514,18 @@ } ], "expression": { - "id": 1244, + "id": 1241, "name": "AddressUpgradeable", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1841, + "referencedDeclaration": 1838, "src": "3388:18:6", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_AddressUpgradeable_$1841_$", + "typeIdentifier": "t_type$_t_contract$_AddressUpgradeable_$1838_$", "typeString": "type(library AddressUpgradeable)" } }, - "id": 1245, + "id": 1242, "isConstant": false, "isLValue": false, "isPure": false, @@ -2533,14 +2533,14 @@ "memberLocation": "3407:10:6", "memberName": "isContract", "nodeType": "MemberAccess", - "referencedDeclaration": 1529, + "referencedDeclaration": 1526, "src": "3388:29:6", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", "typeString": "function (address) view returns (bool)" } }, - "id": 1250, + "id": 1247, "isConstant": false, "isLValue": false, "isPure": false, @@ -2568,17 +2568,17 @@ "typeIdentifier": "t_uint8", "typeString": "uint8" }, - "id": 1254, + "id": 1251, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 1252, + "id": 1249, "name": "_initialized", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1221, + "referencedDeclaration": 1218, "src": "3436:12:6", "typeDescriptions": { "typeIdentifier": "t_uint8", @@ -2589,7 +2589,7 @@ "operator": "==", "rightExpression": { "hexValue": "31", - "id": 1253, + "id": 1250, "isConstant": false, "isLValue": false, "isPure": true, @@ -2616,7 +2616,7 @@ } } ], - "id": 1256, + "id": 1253, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -2637,7 +2637,7 @@ }, { "hexValue": "496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a6564", - "id": 1258, + "id": 1255, "isConstant": false, "isLValue": false, "isPure": true, @@ -2663,7 +2663,7 @@ "typeString": "literal_string \"Initializable: contract is already initialized\"" } ], - "id": 1237, + "id": 1234, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -2677,7 +2677,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 1259, + "id": 1256, "isConstant": false, "isLValue": false, "isPure": false, @@ -2693,23 +2693,23 @@ "typeString": "tuple()" } }, - "id": 1260, + "id": 1257, "nodeType": "ExpressionStatement", "src": "3325:201:6" }, { "expression": { - "id": 1263, + "id": 1260, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 1261, + "id": 1258, "name": "_initialized", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1221, + "referencedDeclaration": 1218, "src": "3536:12:6", "typeDescriptions": { "typeIdentifier": "t_uint8", @@ -2720,7 +2720,7 @@ "operator": "=", "rightHandSide": { "hexValue": "31", - "id": 1262, + "id": 1259, "isConstant": false, "isLValue": false, "isPure": true, @@ -2740,44 +2740,44 @@ "typeString": "uint8" } }, - "id": 1264, + "id": 1261, "nodeType": "ExpressionStatement", "src": "3536:16:6" }, { "condition": { - "id": 1265, + "id": 1262, "name": "isTopLevelCall", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1233, + "referencedDeclaration": 1230, "src": "3566:14:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 1271, + "id": 1268, "nodeType": "IfStatement", "src": "3562:65:6", "trueBody": { - "id": 1270, + "id": 1267, "nodeType": "Block", "src": "3582:45:6", "statements": [ { "expression": { - "id": 1268, + "id": 1265, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 1266, + "id": 1263, "name": "_initializing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1224, + "referencedDeclaration": 1221, "src": "3596:13:6", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -2788,7 +2788,7 @@ "operator": "=", "rightHandSide": { "hexValue": "74727565", - "id": 1267, + "id": 1264, "isConstant": false, "isLValue": false, "isPure": true, @@ -2808,7 +2808,7 @@ "typeString": "bool" } }, - "id": 1269, + "id": 1266, "nodeType": "ExpressionStatement", "src": "3596:20:6" } @@ -2816,44 +2816,44 @@ } }, { - "id": 1272, + "id": 1269, "nodeType": "PlaceholderStatement", "src": "3636:1:6" }, { "condition": { - "id": 1273, + "id": 1270, "name": "isTopLevelCall", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1233, + "referencedDeclaration": 1230, "src": "3651:14:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 1283, + "id": 1280, "nodeType": "IfStatement", "src": "3647:99:6", "trueBody": { - "id": 1282, + "id": 1279, "nodeType": "Block", "src": "3667:79:6", "statements": [ { "expression": { - "id": 1276, + "id": 1273, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 1274, + "id": 1271, "name": "_initializing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1224, + "referencedDeclaration": 1221, "src": "3681:13:6", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -2864,7 +2864,7 @@ "operator": "=", "rightHandSide": { "hexValue": "66616c7365", - "id": 1275, + "id": 1272, "isConstant": false, "isLValue": false, "isPure": true, @@ -2884,7 +2884,7 @@ "typeString": "bool" } }, - "id": 1277, + "id": 1274, "nodeType": "ExpressionStatement", "src": "3681:21:6" }, @@ -2893,7 +2893,7 @@ "arguments": [ { "hexValue": "31", - "id": 1279, + "id": 1276, "isConstant": false, "isLValue": false, "isPure": true, @@ -2915,18 +2915,18 @@ "typeString": "int_const 1" } ], - "id": 1278, + "id": 1275, "name": "Initialized", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1229, + "referencedDeclaration": 1226, "src": "3721:11:6", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_uint8_$returns$__$", "typeString": "function (uint8)" } }, - "id": 1280, + "id": 1277, "isConstant": false, "isLValue": false, "isPure": false, @@ -2942,7 +2942,7 @@ "typeString": "tuple()" } }, - "id": 1281, + "id": 1278, "nodeType": "EmitStatement", "src": "3716:19:6" } @@ -2952,17 +2952,17 @@ ] }, "documentation": { - "id": 1230, + "id": 1227, "nodeType": "StructuredDocumentation", "src": "2842:399:6", "text": " @dev A modifier that defines a protected initializer function that can be invoked at most once. In its scope,\n `onlyInitializing` functions can be used to initialize parent contracts.\n Similar to `reinitializer(1)`, except that functions marked with `initializer` can be nested in the context of a\n constructor.\n Emits an {Initialized} event." }, - "id": 1285, + "id": 1282, "name": "initializer", "nameLocation": "3255:11:6", "nodeType": "ModifierDefinition", "parameters": { - "id": 1231, + "id": 1228, "nodeType": "ParameterList", "parameters": [], "src": "3266:2:6" @@ -2973,7 +2973,7 @@ }, { "body": { - "id": 1317, + "id": 1314, "nodeType": "Block", "src": "4863:255:6", "statements": [ @@ -2985,13 +2985,13 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 1296, + "id": 1293, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 1292, + "id": 1289, "isConstant": false, "isLValue": false, "isPure": false, @@ -3001,11 +3001,11 @@ "prefix": true, "src": "4881:14:6", "subExpression": { - "id": 1291, + "id": 1288, "name": "_initializing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1224, + "referencedDeclaration": 1221, "src": "4882:13:6", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -3024,17 +3024,17 @@ "typeIdentifier": "t_uint8", "typeString": "uint8" }, - "id": 1295, + "id": 1292, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 1293, + "id": 1290, "name": "_initialized", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1221, + "referencedDeclaration": 1218, "src": "4899:12:6", "typeDescriptions": { "typeIdentifier": "t_uint8", @@ -3044,11 +3044,11 @@ "nodeType": "BinaryOperation", "operator": "<", "rightExpression": { - "id": 1294, + "id": 1291, "name": "version", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1288, + "referencedDeclaration": 1285, "src": "4914:7:6", "typeDescriptions": { "typeIdentifier": "t_uint8", @@ -3069,7 +3069,7 @@ }, { "hexValue": "496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a6564", - "id": 1297, + "id": 1294, "isConstant": false, "isLValue": false, "isPure": true, @@ -3095,7 +3095,7 @@ "typeString": "literal_string \"Initializable: contract is already initialized\"" } ], - "id": 1290, + "id": 1287, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -3109,7 +3109,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 1298, + "id": 1295, "isConstant": false, "isLValue": false, "isPure": false, @@ -3125,23 +3125,23 @@ "typeString": "tuple()" } }, - "id": 1299, + "id": 1296, "nodeType": "ExpressionStatement", "src": "4873:99:6" }, { "expression": { - "id": 1302, + "id": 1299, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 1300, + "id": 1297, "name": "_initialized", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1221, + "referencedDeclaration": 1218, "src": "4982:12:6", "typeDescriptions": { "typeIdentifier": "t_uint8", @@ -3151,11 +3151,11 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 1301, + "id": 1298, "name": "version", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1288, + "referencedDeclaration": 1285, "src": "4997:7:6", "typeDescriptions": { "typeIdentifier": "t_uint8", @@ -3168,23 +3168,23 @@ "typeString": "uint8" } }, - "id": 1303, + "id": 1300, "nodeType": "ExpressionStatement", "src": "4982:22:6" }, { "expression": { - "id": 1306, + "id": 1303, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 1304, + "id": 1301, "name": "_initializing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1224, + "referencedDeclaration": 1221, "src": "5014:13:6", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -3195,7 +3195,7 @@ "operator": "=", "rightHandSide": { "hexValue": "74727565", - "id": 1305, + "id": 1302, "isConstant": false, "isLValue": false, "isPure": true, @@ -3215,28 +3215,28 @@ "typeString": "bool" } }, - "id": 1307, + "id": 1304, "nodeType": "ExpressionStatement", "src": "5014:20:6" }, { - "id": 1308, + "id": 1305, "nodeType": "PlaceholderStatement", "src": "5044:1:6" }, { "expression": { - "id": 1311, + "id": 1308, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 1309, + "id": 1306, "name": "_initializing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1224, + "referencedDeclaration": 1221, "src": "5055:13:6", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -3247,7 +3247,7 @@ "operator": "=", "rightHandSide": { "hexValue": "66616c7365", - "id": 1310, + "id": 1307, "isConstant": false, "isLValue": false, "isPure": true, @@ -3267,7 +3267,7 @@ "typeString": "bool" } }, - "id": 1312, + "id": 1309, "nodeType": "ExpressionStatement", "src": "5055:21:6" }, @@ -3275,11 +3275,11 @@ "eventCall": { "arguments": [ { - "id": 1314, + "id": 1311, "name": "version", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1288, + "referencedDeclaration": 1285, "src": "5103:7:6", "typeDescriptions": { "typeIdentifier": "t_uint8", @@ -3294,18 +3294,18 @@ "typeString": "uint8" } ], - "id": 1313, + "id": 1310, "name": "Initialized", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1229, + "referencedDeclaration": 1226, "src": "5091:11:6", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_uint8_$returns$__$", "typeString": "function (uint8)" } }, - "id": 1315, + "id": 1312, "isConstant": false, "isLValue": false, "isPure": false, @@ -3321,34 +3321,34 @@ "typeString": "tuple()" } }, - "id": 1316, + "id": 1313, "nodeType": "EmitStatement", "src": "5086:25:6" } ] }, "documentation": { - "id": 1286, + "id": 1283, "nodeType": "StructuredDocumentation", "src": "3758:1062:6", "text": " @dev A modifier that defines a protected reinitializer function that can be invoked at most once, and only if the\n contract hasn't been initialized to a greater version before. In its scope, `onlyInitializing` functions can be\n used to initialize parent contracts.\n A reinitializer may be used after the original initialization step. This is essential to configure modules that\n are added through upgrades and that require initialization.\n When `version` is 1, this modifier is similar to `initializer`, except that functions marked with `reinitializer`\n cannot be nested. If one is invoked in the context of another, execution will revert.\n Note that versions can jump in increments greater than 1; this implies that if multiple reinitializers coexist in\n a contract, executing them in the right order is up to the developer or operator.\n WARNING: setting the version to 255 will prevent any future reinitialization.\n Emits an {Initialized} event." }, - "id": 1318, + "id": 1315, "name": "reinitializer", "nameLocation": "4834:13:6", "nodeType": "ModifierDefinition", "parameters": { - "id": 1289, + "id": 1286, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1288, + "id": 1285, "mutability": "mutable", "name": "version", "nameLocation": "4854:7:6", "nodeType": "VariableDeclaration", - "scope": 1318, + "scope": 1315, "src": "4848:13:6", "stateVariable": false, "storageLocation": "default", @@ -3357,7 +3357,7 @@ "typeString": "uint8" }, "typeName": { - "id": 1287, + "id": 1284, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "4848:5:6", @@ -3377,7 +3377,7 @@ }, { "body": { - "id": 1327, + "id": 1324, "nodeType": "Block", "src": "5356:97:6", "statements": [ @@ -3385,11 +3385,11 @@ "expression": { "arguments": [ { - "id": 1322, + "id": 1319, "name": "_initializing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1224, + "referencedDeclaration": 1221, "src": "5374:13:6", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -3398,7 +3398,7 @@ }, { "hexValue": "496e697469616c697a61626c653a20636f6e7472616374206973206e6f7420696e697469616c697a696e67", - "id": 1323, + "id": 1320, "isConstant": false, "isLValue": false, "isPure": true, @@ -3424,7 +3424,7 @@ "typeString": "literal_string \"Initializable: contract is not initializing\"" } ], - "id": 1321, + "id": 1318, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -3438,7 +3438,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 1324, + "id": 1321, "isConstant": false, "isLValue": false, "isPure": false, @@ -3454,29 +3454,29 @@ "typeString": "tuple()" } }, - "id": 1325, + "id": 1322, "nodeType": "ExpressionStatement", "src": "5366:69:6" }, { - "id": 1326, + "id": 1323, "nodeType": "PlaceholderStatement", "src": "5445:1:6" } ] }, "documentation": { - "id": 1319, + "id": 1316, "nodeType": "StructuredDocumentation", "src": "5124:199:6", "text": " @dev Modifier to protect an initialization function so that it can only be invoked by functions with the\n {initializer} and {reinitializer} modifiers, directly or indirectly." }, - "id": 1328, + "id": 1325, "name": "onlyInitializing", "nameLocation": "5337:16:6", "nodeType": "ModifierDefinition", "parameters": { - "id": 1320, + "id": 1317, "nodeType": "ParameterList", "parameters": [], "src": "5353:2:6" @@ -3487,7 +3487,7 @@ }, { "body": { - "id": 1363, + "id": 1360, "nodeType": "Block", "src": "5988:231:6", "statements": [ @@ -3495,7 +3495,7 @@ "expression": { "arguments": [ { - "id": 1334, + "id": 1331, "isConstant": false, "isLValue": false, "isPure": false, @@ -3505,11 +3505,11 @@ "prefix": true, "src": "6006:14:6", "subExpression": { - "id": 1333, + "id": 1330, "name": "_initializing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1224, + "referencedDeclaration": 1221, "src": "6007:13:6", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -3523,7 +3523,7 @@ }, { "hexValue": "496e697469616c697a61626c653a20636f6e747261637420697320696e697469616c697a696e67", - "id": 1335, + "id": 1332, "isConstant": false, "isLValue": false, "isPure": true, @@ -3549,7 +3549,7 @@ "typeString": "literal_string \"Initializable: contract is initializing\"" } ], - "id": 1332, + "id": 1329, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -3563,7 +3563,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 1336, + "id": 1333, "isConstant": false, "isLValue": false, "isPure": false, @@ -3579,7 +3579,7 @@ "typeString": "tuple()" } }, - "id": 1337, + "id": 1334, "nodeType": "ExpressionStatement", "src": "5998:66:6" }, @@ -3589,17 +3589,17 @@ "typeIdentifier": "t_uint8", "typeString": "uint8" }, - "id": 1344, + "id": 1341, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 1338, + "id": 1335, "name": "_initialized", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1221, + "referencedDeclaration": 1218, "src": "6078:12:6", "typeDescriptions": { "typeIdentifier": "t_uint8", @@ -3612,7 +3612,7 @@ "expression": { "arguments": [ { - "id": 1341, + "id": 1338, "isConstant": false, "isLValue": false, "isPure": true, @@ -3624,7 +3624,7 @@ "typeString": "type(uint8)" }, "typeName": { - "id": 1340, + "id": 1337, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "6099:5:6", @@ -3639,7 +3639,7 @@ "typeString": "type(uint8)" } ], - "id": 1339, + "id": 1336, "name": "type", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -3650,7 +3650,7 @@ "typeString": "function () pure" } }, - "id": 1342, + "id": 1339, "isConstant": false, "isLValue": false, "isPure": true, @@ -3666,7 +3666,7 @@ "typeString": "type(uint8)" } }, - "id": 1343, + "id": 1340, "isConstant": false, "isLValue": false, "isPure": true, @@ -3686,27 +3686,27 @@ "typeString": "bool" } }, - "id": 1362, + "id": 1359, "nodeType": "IfStatement", "src": "6074:139:6", "trueBody": { - "id": 1361, + "id": 1358, "nodeType": "Block", "src": "6111:102:6", "statements": [ { "expression": { - "id": 1351, + "id": 1348, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 1345, + "id": 1342, "name": "_initialized", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1221, + "referencedDeclaration": 1218, "src": "6125:12:6", "typeDescriptions": { "typeIdentifier": "t_uint8", @@ -3719,7 +3719,7 @@ "expression": { "arguments": [ { - "id": 1348, + "id": 1345, "isConstant": false, "isLValue": false, "isPure": true, @@ -3731,7 +3731,7 @@ "typeString": "type(uint8)" }, "typeName": { - "id": 1347, + "id": 1344, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "6145:5:6", @@ -3746,7 +3746,7 @@ "typeString": "type(uint8)" } ], - "id": 1346, + "id": 1343, "name": "type", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -3757,7 +3757,7 @@ "typeString": "function () pure" } }, - "id": 1349, + "id": 1346, "isConstant": false, "isLValue": false, "isPure": true, @@ -3773,7 +3773,7 @@ "typeString": "type(uint8)" } }, - "id": 1350, + "id": 1347, "isConstant": false, "isLValue": false, "isPure": true, @@ -3793,7 +3793,7 @@ "typeString": "uint8" } }, - "id": 1352, + "id": 1349, "nodeType": "ExpressionStatement", "src": "6125:30:6" }, @@ -3804,7 +3804,7 @@ "expression": { "arguments": [ { - "id": 1356, + "id": 1353, "isConstant": false, "isLValue": false, "isPure": true, @@ -3816,7 +3816,7 @@ "typeString": "type(uint8)" }, "typeName": { - "id": 1355, + "id": 1352, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "6191:5:6", @@ -3831,7 +3831,7 @@ "typeString": "type(uint8)" } ], - "id": 1354, + "id": 1351, "name": "type", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -3842,7 +3842,7 @@ "typeString": "function () pure" } }, - "id": 1357, + "id": 1354, "isConstant": false, "isLValue": false, "isPure": true, @@ -3858,7 +3858,7 @@ "typeString": "type(uint8)" } }, - "id": 1358, + "id": 1355, "isConstant": false, "isLValue": false, "isPure": true, @@ -3880,18 +3880,18 @@ "typeString": "uint8" } ], - "id": 1353, + "id": 1350, "name": "Initialized", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1229, + "referencedDeclaration": 1226, "src": "6174:11:6", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_uint8_$returns$__$", "typeString": "function (uint8)" } }, - "id": 1359, + "id": 1356, "isConstant": false, "isLValue": false, "isPure": false, @@ -3907,7 +3907,7 @@ "typeString": "tuple()" } }, - "id": 1360, + "id": 1357, "nodeType": "EmitStatement", "src": "6169:33:6" } @@ -3917,12 +3917,12 @@ ] }, "documentation": { - "id": 1329, + "id": 1326, "nodeType": "StructuredDocumentation", "src": "5459:475:6", "text": " @dev Locks the contract, preventing any future reinitialization. This cannot be part of an initializer call.\n Calling this in the constructor of a contract will prevent that contract from being initialized or reinitialized\n to any version. It is recommended to use this to lock implementation contracts that are designed to be called\n through proxies.\n Emits an {Initialized} event the first time it is successfully executed." }, - "id": 1364, + "id": 1361, "implemented": true, "kind": "function", "modifiers": [], @@ -3930,18 +3930,18 @@ "nameLocation": "5948:20:6", "nodeType": "FunctionDefinition", "parameters": { - "id": 1330, + "id": 1327, "nodeType": "ParameterList", "parameters": [], "src": "5968:2:6" }, "returnParameters": { - "id": 1331, + "id": 1328, "nodeType": "ParameterList", "parameters": [], "src": "5988:0:6" }, - "scope": 1383, + "scope": 1380, "src": "5939:280:6", "stateMutability": "nonpayable", "virtual": true, @@ -3949,37 +3949,37 @@ }, { "body": { - "id": 1372, + "id": 1369, "nodeType": "Block", "src": "6393:36:6", "statements": [ { "expression": { - "id": 1370, + "id": 1367, "name": "_initialized", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1221, + "referencedDeclaration": 1218, "src": "6410:12:6", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" } }, - "functionReturnParameters": 1369, - "id": 1371, + "functionReturnParameters": 1366, + "id": 1368, "nodeType": "Return", "src": "6403:19:6" } ] }, "documentation": { - "id": 1365, + "id": 1362, "nodeType": "StructuredDocumentation", "src": "6225:99:6", "text": " @dev Returns the highest version that has been initialized. See {reinitializer}." }, - "id": 1373, + "id": 1370, "implemented": true, "kind": "function", "modifiers": [], @@ -3987,23 +3987,23 @@ "nameLocation": "6338:22:6", "nodeType": "FunctionDefinition", "parameters": { - "id": 1366, + "id": 1363, "nodeType": "ParameterList", "parameters": [], "src": "6360:2:6" }, "returnParameters": { - "id": 1369, + "id": 1366, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1368, + "id": 1365, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 1373, + "scope": 1370, "src": "6386:5:6", "stateVariable": false, "storageLocation": "default", @@ -4012,7 +4012,7 @@ "typeString": "uint8" }, "typeName": { - "id": 1367, + "id": 1364, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "6386:5:6", @@ -4026,7 +4026,7 @@ ], "src": "6385:7:6" }, - "scope": 1383, + "scope": 1380, "src": "6329:100:6", "stateMutability": "view", "virtual": false, @@ -4034,37 +4034,37 @@ }, { "body": { - "id": 1381, + "id": 1378, "nodeType": "Block", "src": "6601:37:6", "statements": [ { "expression": { - "id": 1379, + "id": 1376, "name": "_initializing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1224, + "referencedDeclaration": 1221, "src": "6618:13:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 1378, - "id": 1380, + "functionReturnParameters": 1375, + "id": 1377, "nodeType": "Return", "src": "6611:20:6" } ] }, "documentation": { - "id": 1374, + "id": 1371, "nodeType": "StructuredDocumentation", "src": "6435:105:6", "text": " @dev Returns `true` if the contract is currently initializing. See {onlyInitializing}." }, - "id": 1382, + "id": 1379, "implemented": true, "kind": "function", "modifiers": [], @@ -4072,23 +4072,23 @@ "nameLocation": "6554:15:6", "nodeType": "FunctionDefinition", "parameters": { - "id": 1375, + "id": 1372, "nodeType": "ParameterList", "parameters": [], "src": "6569:2:6" }, "returnParameters": { - "id": 1378, + "id": 1375, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1377, + "id": 1374, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 1382, + "scope": 1379, "src": "6595:4:6", "stateVariable": false, "storageLocation": "default", @@ -4097,7 +4097,7 @@ "typeString": "bool" }, "typeName": { - "id": 1376, + "id": 1373, "name": "bool", "nodeType": "ElementaryTypeName", "src": "6595:4:6", @@ -4111,14 +4111,14 @@ ], "src": "6594:6:6" }, - "scope": 1383, + "scope": 1380, "src": "6545:93:6", "stateMutability": "view", "virtual": false, "visibility": "internal" } ], - "scope": 1384, + "scope": 1381, "src": "2394:4246:6", "usedErrors": [] } @@ -4131,5 +4131,5 @@ }, "networks": {}, "schemaVersion": "2.0.1", - "updatedAt": "2024-06-20T09:33:52.552Z" + "updatedAt": "2024-06-27T12:24:25.256Z" } \ No newline at end of file diff --git a/build/contracts/MockUSDT.json b/build/contracts/MockUSDT.json index 991a59b..4c9f990 100644 --- a/build/contracts/MockUSDT.json +++ b/build/contracts/MockUSDT.json @@ -310,28 +310,28 @@ "type": "function" } ], - "bytecode": "0x60806040523480156200001157600080fd5b50d380156200001f57600080fd5b50d280156200002d57600080fd5b506040518060400160405280600881526020017f4d6f636b554453430000000000000000000000000000000000000000000000008152506040518060400160405280600581526020017f4d555344430000000000000000000000000000000000000000000000000000008152508160039081620000ab9190620004d3565b508060049081620000bd9190620004d3565b505050620000dc3369d3c21bcecceda1000000620000e260201b60201c565b620006d5565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160362000154576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200014b906200061b565b60405180910390fd5b62000168600083836200024f60201b60201c565b80600260008282546200017c91906200066c565b92505081905550806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516200022f9190620006b8565b60405180910390a36200024b600083836200025460201b60201c565b5050565b505050565b505050565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680620002db57607f821691505b602082108103620002f157620002f062000293565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026200035b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826200031c565b6200036786836200031c565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b6000620003b4620003ae620003a8846200037f565b62000389565b6200037f565b9050919050565b6000819050919050565b620003d08362000393565b620003e8620003df82620003bb565b84845462000329565b825550505050565b600090565b620003ff620003f0565b6200040c818484620003c5565b505050565b5b81811015620004345762000428600082620003f5565b60018101905062000412565b5050565b601f82111562000483576200044d81620002f7565b62000458846200030c565b8101602085101562000468578190505b6200048062000477856200030c565b83018262000411565b50505b505050565b600082821c905092915050565b6000620004a86000198460080262000488565b1980831691505092915050565b6000620004c3838362000495565b9150826002028217905092915050565b620004de8262000259565b67ffffffffffffffff811115620004fa57620004f962000264565b5b620005068254620002c2565b6200051382828562000438565b600060209050601f8311600181146200054b576000841562000536578287015190505b620005428582620004b5565b865550620005b2565b601f1984166200055b86620002f7565b60005b8281101562000585578489015182556001820191506020850194506020810190506200055e565b86831015620005a55784890151620005a1601f89168262000495565b8355505b6001600288020188555050505b505050505050565b600082825260208201905092915050565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b600062000603601f83620005ba565b91506200061082620005cb565b602082019050919050565b600060208201905081810360008301526200063681620005f4565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600062000679826200037f565b915062000686836200037f565b9250828201905080821115620006a157620006a06200063d565b5b92915050565b620006b2816200037f565b82525050565b6000602082019050620006cf6000830184620006a7565b92915050565b6118bb80620006e56000396000f3fe608060405234801561001057600080fd5b50d3801561001d57600080fd5b50d2801561002a57600080fd5b50600436106101045760003560e01c806370a08231116100a6578063a0712d6811610080578063a0712d6814610267578063a457c2d714610283578063a9059cbb146102b3578063dd62ed3e146102e357610104565b806370a082311461020f57806395d89b411461023f5780639975038c1461025d57610104565b806323b872dd116100e257806323b872dd14610175578063313ce567146101a557806339509351146101c357806342966c68146101f357610104565b806306fdde0314610109578063095ea7b31461012757806318160ddd14610157575b600080fd5b610111610313565b60405161011e9190610f43565b60405180910390f35b610141600480360381019061013c919061102a565b6103a5565b60405161014e9190611085565b60405180910390f35b61015f6103c8565b60405161016c91906110af565b60405180910390f35b61018f600480360381019061018a91906110ca565b6103d2565b60405161019c9190611085565b60405180910390f35b6101ad610401565b6040516101ba9190611139565b60405180910390f35b6101dd60048036038101906101d8919061102a565b61040a565b6040516101ea9190611085565b60405180910390f35b61020d60048036038101906102089190611154565b610441565b005b61022960048036038101906102249190611181565b61044e565b60405161023691906110af565b60405180910390f35b610247610496565b6040516102549190610f43565b60405180910390f35b610265610528565b005b610281600480360381019061027c9190611154565b610585565b005b61029d6004803603810190610298919061102a565b610592565b6040516102aa9190611085565b60405180910390f35b6102cd60048036038101906102c8919061102a565b610609565b6040516102da9190611085565b60405180910390f35b6102fd60048036038101906102f891906111ae565b61062c565b60405161030a91906110af565b60405180910390f35b6060600380546103229061121d565b80601f016020809104026020016040519081016040528092919081815260200182805461034e9061121d565b801561039b5780601f106103705761010080835404028352916020019161039b565b820191906000526020600020905b81548152906001019060200180831161037e57829003601f168201915b5050505050905090565b6000806103b06106b3565b90506103bd8185856106bb565b600191505092915050565b6000600254905090565b6000806103dd6106b3565b90506103ea858285610884565b6103f5858585610910565b60019150509392505050565b60006012905090565b6000806104156106b3565b9050610436818585610427858961062c565b610431919061127d565b6106bb565b600191505092915050565b61044b3382610b86565b50565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6060600480546104a59061121d565b80601f01602080910402602001604051908101604052809291908181526020018280546104d19061121d565b801561051e5780601f106104f35761010080835404028352916020019161051e565b820191906000526020600020905b81548152906001019060200180831161050157829003601f168201915b5050505050905090565b60006105333361044e565b905060008111610578576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161056f906112fd565b60405180910390fd5b6105823382610b86565b50565b61058f3382610d53565b50565b60008061059d6106b3565b905060006105ab828661062c565b9050838110156105f0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105e79061138f565b60405180910390fd5b6105fd82868684036106bb565b60019250505092915050565b6000806106146106b3565b9050610621818585610910565b600191505092915050565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361072a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161072190611421565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610799576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610790906114b3565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161087791906110af565b60405180910390a3505050565b6000610890848461062c565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff811461090a57818110156108fc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108f39061151f565b60405180910390fd5b61090984848484036106bb565b5b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361097f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610976906115b1565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036109ee576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109e590611643565b60405180910390fd5b6109f9838383610ea9565b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015610a7f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a76906116d5565b60405180910390fd5b8181036000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610b6d91906110af565b60405180910390a3610b80848484610eae565b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610bf5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bec90611767565b60405180910390fd5b610c0182600083610ea9565b60008060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015610c87576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c7e906117f9565b60405180910390fd5b8181036000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600260008282540392505081905550600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610d3a91906110af565b60405180910390a3610d4e83600084610eae565b505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610dc2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610db990611865565b60405180910390fd5b610dce60008383610ea9565b8060026000828254610de0919061127d565b92505081905550806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051610e9191906110af565b60405180910390a3610ea560008383610eae565b5050565b505050565b505050565b600081519050919050565b600082825260208201905092915050565b60005b83811015610eed578082015181840152602081019050610ed2565b60008484015250505050565b6000601f19601f8301169050919050565b6000610f1582610eb3565b610f1f8185610ebe565b9350610f2f818560208601610ecf565b610f3881610ef9565b840191505092915050565b60006020820190508181036000830152610f5d8184610f0a565b905092915050565b600080fd5b600074ffffffffffffffffffffffffffffffffffffffffff82169050919050565b610f9481610f6a565b8114610f9f57600080fd5b50565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000610fcd82610fa2565b9050919050565b600081359050610fe381610f8b565b610fec81610fc2565b905092915050565b6000819050919050565b61100781610ff4565b811461101257600080fd5b50565b60008135905061102481610ffe565b92915050565b6000806040838503121561104157611040610f65565b5b600061104f85828601610fd4565b925050602061106085828601611015565b9150509250929050565b60008115159050919050565b61107f8161106a565b82525050565b600060208201905061109a6000830184611076565b92915050565b6110a981610ff4565b82525050565b60006020820190506110c460008301846110a0565b92915050565b6000806000606084860312156110e3576110e2610f65565b5b60006110f186828701610fd4565b935050602061110286828701610fd4565b925050604061111386828701611015565b9150509250925092565b600060ff82169050919050565b6111338161111d565b82525050565b600060208201905061114e600083018461112a565b92915050565b60006020828403121561116a57611169610f65565b5b600061117884828501611015565b91505092915050565b60006020828403121561119757611196610f65565b5b60006111a584828501610fd4565b91505092915050565b600080604083850312156111c5576111c4610f65565b5b60006111d385828601610fd4565b92505060206111e485828601610fd4565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061123557607f821691505b602082108103611248576112476111ee565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061128882610ff4565b915061129383610ff4565b92508282019050808211156112ab576112aa61124e565b5b92915050565b7f4d6f636b555344543a204e6f7468696e6720746f206275726e00000000000000600082015250565b60006112e7601983610ebe565b91506112f2826112b1565b602082019050919050565b60006020820190508181036000830152611316816112da565b9050919050565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b6000611379602583610ebe565b91506113848261131d565b604082019050919050565b600060208201905081810360008301526113a88161136c565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b600061140b602483610ebe565b9150611416826113af565b604082019050919050565b6000602082019050818103600083015261143a816113fe565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b600061149d602283610ebe565b91506114a882611441565b604082019050919050565b600060208201905081810360008301526114cc81611490565b9050919050565b7f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000600082015250565b6000611509601d83610ebe565b9150611514826114d3565b602082019050919050565b60006020820190508181036000830152611538816114fc565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b600061159b602583610ebe565b91506115a68261153f565b604082019050919050565b600060208201905081810360008301526115ca8161158e565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b600061162d602383610ebe565b9150611638826115d1565b604082019050919050565b6000602082019050818103600083015261165c81611620565b9050919050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b60006116bf602683610ebe565b91506116ca82611663565b604082019050919050565b600060208201905081810360008301526116ee816116b2565b9050919050565b7f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360008201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b6000611751602183610ebe565b915061175c826116f5565b604082019050919050565b6000602082019050818103600083015261178081611744565b9050919050565b7f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60008201527f6365000000000000000000000000000000000000000000000000000000000000602082015250565b60006117e3602283610ebe565b91506117ee82611787565b604082019050919050565b60006020820190508181036000830152611812816117d6565b9050919050565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b600061184f601f83610ebe565b915061185a82611819565b602082019050919050565b6000602082019050818103600083015261187e81611842565b905091905056fea26474726f6e58221220d51abe46434b1aa994e9309960c30d10a198f9655da44a6998ddc7989842aba864736f6c63430008120033", - "deployedBytecode": "0x608060405234801561001057600080fd5b50d3801561001d57600080fd5b50d2801561002a57600080fd5b50600436106101045760003560e01c806370a08231116100a6578063a0712d6811610080578063a0712d6814610267578063a457c2d714610283578063a9059cbb146102b3578063dd62ed3e146102e357610104565b806370a082311461020f57806395d89b411461023f5780639975038c1461025d57610104565b806323b872dd116100e257806323b872dd14610175578063313ce567146101a557806339509351146101c357806342966c68146101f357610104565b806306fdde0314610109578063095ea7b31461012757806318160ddd14610157575b600080fd5b610111610313565b60405161011e9190610f43565b60405180910390f35b610141600480360381019061013c919061102a565b6103a5565b60405161014e9190611085565b60405180910390f35b61015f6103c8565b60405161016c91906110af565b60405180910390f35b61018f600480360381019061018a91906110ca565b6103d2565b60405161019c9190611085565b60405180910390f35b6101ad610401565b6040516101ba9190611139565b60405180910390f35b6101dd60048036038101906101d8919061102a565b61040a565b6040516101ea9190611085565b60405180910390f35b61020d60048036038101906102089190611154565b610441565b005b61022960048036038101906102249190611181565b61044e565b60405161023691906110af565b60405180910390f35b610247610496565b6040516102549190610f43565b60405180910390f35b610265610528565b005b610281600480360381019061027c9190611154565b610585565b005b61029d6004803603810190610298919061102a565b610592565b6040516102aa9190611085565b60405180910390f35b6102cd60048036038101906102c8919061102a565b610609565b6040516102da9190611085565b60405180910390f35b6102fd60048036038101906102f891906111ae565b61062c565b60405161030a91906110af565b60405180910390f35b6060600380546103229061121d565b80601f016020809104026020016040519081016040528092919081815260200182805461034e9061121d565b801561039b5780601f106103705761010080835404028352916020019161039b565b820191906000526020600020905b81548152906001019060200180831161037e57829003601f168201915b5050505050905090565b6000806103b06106b3565b90506103bd8185856106bb565b600191505092915050565b6000600254905090565b6000806103dd6106b3565b90506103ea858285610884565b6103f5858585610910565b60019150509392505050565b60006012905090565b6000806104156106b3565b9050610436818585610427858961062c565b610431919061127d565b6106bb565b600191505092915050565b61044b3382610b86565b50565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6060600480546104a59061121d565b80601f01602080910402602001604051908101604052809291908181526020018280546104d19061121d565b801561051e5780601f106104f35761010080835404028352916020019161051e565b820191906000526020600020905b81548152906001019060200180831161050157829003601f168201915b5050505050905090565b60006105333361044e565b905060008111610578576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161056f906112fd565b60405180910390fd5b6105823382610b86565b50565b61058f3382610d53565b50565b60008061059d6106b3565b905060006105ab828661062c565b9050838110156105f0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105e79061138f565b60405180910390fd5b6105fd82868684036106bb565b60019250505092915050565b6000806106146106b3565b9050610621818585610910565b600191505092915050565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361072a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161072190611421565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610799576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610790906114b3565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161087791906110af565b60405180910390a3505050565b6000610890848461062c565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff811461090a57818110156108fc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108f39061151f565b60405180910390fd5b61090984848484036106bb565b5b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361097f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610976906115b1565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036109ee576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109e590611643565b60405180910390fd5b6109f9838383610ea9565b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015610a7f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a76906116d5565b60405180910390fd5b8181036000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610b6d91906110af565b60405180910390a3610b80848484610eae565b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610bf5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bec90611767565b60405180910390fd5b610c0182600083610ea9565b60008060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015610c87576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c7e906117f9565b60405180910390fd5b8181036000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600260008282540392505081905550600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610d3a91906110af565b60405180910390a3610d4e83600084610eae565b505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610dc2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610db990611865565b60405180910390fd5b610dce60008383610ea9565b8060026000828254610de0919061127d565b92505081905550806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051610e9191906110af565b60405180910390a3610ea560008383610eae565b5050565b505050565b505050565b600081519050919050565b600082825260208201905092915050565b60005b83811015610eed578082015181840152602081019050610ed2565b60008484015250505050565b6000601f19601f8301169050919050565b6000610f1582610eb3565b610f1f8185610ebe565b9350610f2f818560208601610ecf565b610f3881610ef9565b840191505092915050565b60006020820190508181036000830152610f5d8184610f0a565b905092915050565b600080fd5b600074ffffffffffffffffffffffffffffffffffffffffff82169050919050565b610f9481610f6a565b8114610f9f57600080fd5b50565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000610fcd82610fa2565b9050919050565b600081359050610fe381610f8b565b610fec81610fc2565b905092915050565b6000819050919050565b61100781610ff4565b811461101257600080fd5b50565b60008135905061102481610ffe565b92915050565b6000806040838503121561104157611040610f65565b5b600061104f85828601610fd4565b925050602061106085828601611015565b9150509250929050565b60008115159050919050565b61107f8161106a565b82525050565b600060208201905061109a6000830184611076565b92915050565b6110a981610ff4565b82525050565b60006020820190506110c460008301846110a0565b92915050565b6000806000606084860312156110e3576110e2610f65565b5b60006110f186828701610fd4565b935050602061110286828701610fd4565b925050604061111386828701611015565b9150509250925092565b600060ff82169050919050565b6111338161111d565b82525050565b600060208201905061114e600083018461112a565b92915050565b60006020828403121561116a57611169610f65565b5b600061117884828501611015565b91505092915050565b60006020828403121561119757611196610f65565b5b60006111a584828501610fd4565b91505092915050565b600080604083850312156111c5576111c4610f65565b5b60006111d385828601610fd4565b92505060206111e485828601610fd4565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061123557607f821691505b602082108103611248576112476111ee565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061128882610ff4565b915061129383610ff4565b92508282019050808211156112ab576112aa61124e565b5b92915050565b7f4d6f636b555344543a204e6f7468696e6720746f206275726e00000000000000600082015250565b60006112e7601983610ebe565b91506112f2826112b1565b602082019050919050565b60006020820190508181036000830152611316816112da565b9050919050565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b6000611379602583610ebe565b91506113848261131d565b604082019050919050565b600060208201905081810360008301526113a88161136c565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b600061140b602483610ebe565b9150611416826113af565b604082019050919050565b6000602082019050818103600083015261143a816113fe565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b600061149d602283610ebe565b91506114a882611441565b604082019050919050565b600060208201905081810360008301526114cc81611490565b9050919050565b7f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000600082015250565b6000611509601d83610ebe565b9150611514826114d3565b602082019050919050565b60006020820190508181036000830152611538816114fc565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b600061159b602583610ebe565b91506115a68261153f565b604082019050919050565b600060208201905081810360008301526115ca8161158e565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b600061162d602383610ebe565b9150611638826115d1565b604082019050919050565b6000602082019050818103600083015261165c81611620565b9050919050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b60006116bf602683610ebe565b91506116ca82611663565b604082019050919050565b600060208201905081810360008301526116ee816116b2565b9050919050565b7f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360008201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b6000611751602183610ebe565b915061175c826116f5565b604082019050919050565b6000602082019050818103600083015261178081611744565b9050919050565b7f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60008201527f6365000000000000000000000000000000000000000000000000000000000000602082015250565b60006117e3602283610ebe565b91506117ee82611787565b604082019050919050565b60006020820190508181036000830152611812816117d6565b9050919050565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b600061184f601f83610ebe565b915061185a82611819565b602082019050919050565b6000602082019050818103600083015261187e81611842565b905091905056fea26474726f6e58221220d51abe46434b1aa994e9309960c30d10a198f9655da44a6998ddc7989842aba864736f6c63430008120033", + "bytecode": "0x60806040523480156200001157600080fd5b50d380156200001f57600080fd5b50d280156200002d57600080fd5b506040518060400160405280600881526020017f4d6f636b554453430000000000000000000000000000000000000000000000008152506040518060400160405280600581526020017f4d555344430000000000000000000000000000000000000000000000000000008152508160039081620000ab9190620004d3565b508060049081620000bd9190620004d3565b505050620000dc3369d3c21bcecceda1000000620000e260201b60201c565b620006d5565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160362000154576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200014b906200061b565b60405180910390fd5b62000168600083836200024f60201b60201c565b80600260008282546200017c91906200066c565b92505081905550806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516200022f9190620006b8565b60405180910390a36200024b600083836200025460201b60201c565b5050565b505050565b505050565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680620002db57607f821691505b602082108103620002f157620002f062000293565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026200035b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826200031c565b6200036786836200031c565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b6000620003b4620003ae620003a8846200037f565b62000389565b6200037f565b9050919050565b6000819050919050565b620003d08362000393565b620003e8620003df82620003bb565b84845462000329565b825550505050565b600090565b620003ff620003f0565b6200040c818484620003c5565b505050565b5b81811015620004345762000428600082620003f5565b60018101905062000412565b5050565b601f82111562000483576200044d81620002f7565b62000458846200030c565b8101602085101562000468578190505b6200048062000477856200030c565b83018262000411565b50505b505050565b600082821c905092915050565b6000620004a86000198460080262000488565b1980831691505092915050565b6000620004c3838362000495565b9150826002028217905092915050565b620004de8262000259565b67ffffffffffffffff811115620004fa57620004f962000264565b5b620005068254620002c2565b6200051382828562000438565b600060209050601f8311600181146200054b576000841562000536578287015190505b620005428582620004b5565b865550620005b2565b601f1984166200055b86620002f7565b60005b8281101562000585578489015182556001820191506020850194506020810190506200055e565b86831015620005a55784890151620005a1601f89168262000495565b8355505b6001600288020188555050505b505050505050565b600082825260208201905092915050565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b600062000603601f83620005ba565b91506200061082620005cb565b602082019050919050565b600060208201905081810360008301526200063681620005f4565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600062000679826200037f565b915062000686836200037f565b9250828201905080821115620006a157620006a06200063d565b5b92915050565b620006b2816200037f565b82525050565b6000602082019050620006cf6000830184620006a7565b92915050565b6118bb80620006e56000396000f3fe608060405234801561001057600080fd5b50d3801561001d57600080fd5b50d2801561002a57600080fd5b50600436106101045760003560e01c806370a08231116100a6578063a0712d6811610080578063a0712d6814610267578063a457c2d714610283578063a9059cbb146102b3578063dd62ed3e146102e357610104565b806370a082311461020f57806395d89b411461023f5780639975038c1461025d57610104565b806323b872dd116100e257806323b872dd14610175578063313ce567146101a557806339509351146101c357806342966c68146101f357610104565b806306fdde0314610109578063095ea7b31461012757806318160ddd14610157575b600080fd5b610111610313565b60405161011e9190610f43565b60405180910390f35b610141600480360381019061013c919061102a565b6103a5565b60405161014e9190611085565b60405180910390f35b61015f6103c8565b60405161016c91906110af565b60405180910390f35b61018f600480360381019061018a91906110ca565b6103d2565b60405161019c9190611085565b60405180910390f35b6101ad610401565b6040516101ba9190611139565b60405180910390f35b6101dd60048036038101906101d8919061102a565b61040a565b6040516101ea9190611085565b60405180910390f35b61020d60048036038101906102089190611154565b610441565b005b61022960048036038101906102249190611181565b61044e565b60405161023691906110af565b60405180910390f35b610247610496565b6040516102549190610f43565b60405180910390f35b610265610528565b005b610281600480360381019061027c9190611154565b610585565b005b61029d6004803603810190610298919061102a565b610592565b6040516102aa9190611085565b60405180910390f35b6102cd60048036038101906102c8919061102a565b610609565b6040516102da9190611085565b60405180910390f35b6102fd60048036038101906102f891906111ae565b61062c565b60405161030a91906110af565b60405180910390f35b6060600380546103229061121d565b80601f016020809104026020016040519081016040528092919081815260200182805461034e9061121d565b801561039b5780601f106103705761010080835404028352916020019161039b565b820191906000526020600020905b81548152906001019060200180831161037e57829003601f168201915b5050505050905090565b6000806103b06106b3565b90506103bd8185856106bb565b600191505092915050565b6000600254905090565b6000806103dd6106b3565b90506103ea858285610884565b6103f5858585610910565b60019150509392505050565b60006012905090565b6000806104156106b3565b9050610436818585610427858961062c565b610431919061127d565b6106bb565b600191505092915050565b61044b3382610b86565b50565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6060600480546104a59061121d565b80601f01602080910402602001604051908101604052809291908181526020018280546104d19061121d565b801561051e5780601f106104f35761010080835404028352916020019161051e565b820191906000526020600020905b81548152906001019060200180831161050157829003601f168201915b5050505050905090565b60006105333361044e565b905060008111610578576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161056f906112fd565b60405180910390fd5b6105823382610b86565b50565b61058f3382610d53565b50565b60008061059d6106b3565b905060006105ab828661062c565b9050838110156105f0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105e79061138f565b60405180910390fd5b6105fd82868684036106bb565b60019250505092915050565b6000806106146106b3565b9050610621818585610910565b600191505092915050565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361072a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161072190611421565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610799576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610790906114b3565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161087791906110af565b60405180910390a3505050565b6000610890848461062c565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff811461090a57818110156108fc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108f39061151f565b60405180910390fd5b61090984848484036106bb565b5b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361097f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610976906115b1565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036109ee576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109e590611643565b60405180910390fd5b6109f9838383610ea9565b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015610a7f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a76906116d5565b60405180910390fd5b8181036000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610b6d91906110af565b60405180910390a3610b80848484610eae565b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610bf5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bec90611767565b60405180910390fd5b610c0182600083610ea9565b60008060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015610c87576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c7e906117f9565b60405180910390fd5b8181036000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600260008282540392505081905550600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610d3a91906110af565b60405180910390a3610d4e83600084610eae565b505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610dc2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610db990611865565b60405180910390fd5b610dce60008383610ea9565b8060026000828254610de0919061127d565b92505081905550806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051610e9191906110af565b60405180910390a3610ea560008383610eae565b5050565b505050565b505050565b600081519050919050565b600082825260208201905092915050565b60005b83811015610eed578082015181840152602081019050610ed2565b60008484015250505050565b6000601f19601f8301169050919050565b6000610f1582610eb3565b610f1f8185610ebe565b9350610f2f818560208601610ecf565b610f3881610ef9565b840191505092915050565b60006020820190508181036000830152610f5d8184610f0a565b905092915050565b600080fd5b600074ffffffffffffffffffffffffffffffffffffffffff82169050919050565b610f9481610f6a565b8114610f9f57600080fd5b50565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000610fcd82610fa2565b9050919050565b600081359050610fe381610f8b565b610fec81610fc2565b905092915050565b6000819050919050565b61100781610ff4565b811461101257600080fd5b50565b60008135905061102481610ffe565b92915050565b6000806040838503121561104157611040610f65565b5b600061104f85828601610fd4565b925050602061106085828601611015565b9150509250929050565b60008115159050919050565b61107f8161106a565b82525050565b600060208201905061109a6000830184611076565b92915050565b6110a981610ff4565b82525050565b60006020820190506110c460008301846110a0565b92915050565b6000806000606084860312156110e3576110e2610f65565b5b60006110f186828701610fd4565b935050602061110286828701610fd4565b925050604061111386828701611015565b9150509250925092565b600060ff82169050919050565b6111338161111d565b82525050565b600060208201905061114e600083018461112a565b92915050565b60006020828403121561116a57611169610f65565b5b600061117884828501611015565b91505092915050565b60006020828403121561119757611196610f65565b5b60006111a584828501610fd4565b91505092915050565b600080604083850312156111c5576111c4610f65565b5b60006111d385828601610fd4565b92505060206111e485828601610fd4565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061123557607f821691505b602082108103611248576112476111ee565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061128882610ff4565b915061129383610ff4565b92508282019050808211156112ab576112aa61124e565b5b92915050565b7f4d6f636b555344543a204e6f7468696e6720746f206275726e00000000000000600082015250565b60006112e7601983610ebe565b91506112f2826112b1565b602082019050919050565b60006020820190508181036000830152611316816112da565b9050919050565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b6000611379602583610ebe565b91506113848261131d565b604082019050919050565b600060208201905081810360008301526113a88161136c565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b600061140b602483610ebe565b9150611416826113af565b604082019050919050565b6000602082019050818103600083015261143a816113fe565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b600061149d602283610ebe565b91506114a882611441565b604082019050919050565b600060208201905081810360008301526114cc81611490565b9050919050565b7f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000600082015250565b6000611509601d83610ebe565b9150611514826114d3565b602082019050919050565b60006020820190508181036000830152611538816114fc565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b600061159b602583610ebe565b91506115a68261153f565b604082019050919050565b600060208201905081810360008301526115ca8161158e565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b600061162d602383610ebe565b9150611638826115d1565b604082019050919050565b6000602082019050818103600083015261165c81611620565b9050919050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b60006116bf602683610ebe565b91506116ca82611663565b604082019050919050565b600060208201905081810360008301526116ee816116b2565b9050919050565b7f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360008201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b6000611751602183610ebe565b915061175c826116f5565b604082019050919050565b6000602082019050818103600083015261178081611744565b9050919050565b7f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60008201527f6365000000000000000000000000000000000000000000000000000000000000602082015250565b60006117e3602283610ebe565b91506117ee82611787565b604082019050919050565b60006020820190508181036000830152611812816117d6565b9050919050565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b600061184f601f83610ebe565b915061185a82611819565b602082019050919050565b6000602082019050818103600083015261187e81611842565b905091905056fea26474726f6e58221220e9fa28f94069e8bdb096aaa91496264e103a5b1682d15ae8976276ba708d33f764736f6c63430008120033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50d3801561001d57600080fd5b50d2801561002a57600080fd5b50600436106101045760003560e01c806370a08231116100a6578063a0712d6811610080578063a0712d6814610267578063a457c2d714610283578063a9059cbb146102b3578063dd62ed3e146102e357610104565b806370a082311461020f57806395d89b411461023f5780639975038c1461025d57610104565b806323b872dd116100e257806323b872dd14610175578063313ce567146101a557806339509351146101c357806342966c68146101f357610104565b806306fdde0314610109578063095ea7b31461012757806318160ddd14610157575b600080fd5b610111610313565b60405161011e9190610f43565b60405180910390f35b610141600480360381019061013c919061102a565b6103a5565b60405161014e9190611085565b60405180910390f35b61015f6103c8565b60405161016c91906110af565b60405180910390f35b61018f600480360381019061018a91906110ca565b6103d2565b60405161019c9190611085565b60405180910390f35b6101ad610401565b6040516101ba9190611139565b60405180910390f35b6101dd60048036038101906101d8919061102a565b61040a565b6040516101ea9190611085565b60405180910390f35b61020d60048036038101906102089190611154565b610441565b005b61022960048036038101906102249190611181565b61044e565b60405161023691906110af565b60405180910390f35b610247610496565b6040516102549190610f43565b60405180910390f35b610265610528565b005b610281600480360381019061027c9190611154565b610585565b005b61029d6004803603810190610298919061102a565b610592565b6040516102aa9190611085565b60405180910390f35b6102cd60048036038101906102c8919061102a565b610609565b6040516102da9190611085565b60405180910390f35b6102fd60048036038101906102f891906111ae565b61062c565b60405161030a91906110af565b60405180910390f35b6060600380546103229061121d565b80601f016020809104026020016040519081016040528092919081815260200182805461034e9061121d565b801561039b5780601f106103705761010080835404028352916020019161039b565b820191906000526020600020905b81548152906001019060200180831161037e57829003601f168201915b5050505050905090565b6000806103b06106b3565b90506103bd8185856106bb565b600191505092915050565b6000600254905090565b6000806103dd6106b3565b90506103ea858285610884565b6103f5858585610910565b60019150509392505050565b60006012905090565b6000806104156106b3565b9050610436818585610427858961062c565b610431919061127d565b6106bb565b600191505092915050565b61044b3382610b86565b50565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6060600480546104a59061121d565b80601f01602080910402602001604051908101604052809291908181526020018280546104d19061121d565b801561051e5780601f106104f35761010080835404028352916020019161051e565b820191906000526020600020905b81548152906001019060200180831161050157829003601f168201915b5050505050905090565b60006105333361044e565b905060008111610578576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161056f906112fd565b60405180910390fd5b6105823382610b86565b50565b61058f3382610d53565b50565b60008061059d6106b3565b905060006105ab828661062c565b9050838110156105f0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105e79061138f565b60405180910390fd5b6105fd82868684036106bb565b60019250505092915050565b6000806106146106b3565b9050610621818585610910565b600191505092915050565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361072a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161072190611421565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610799576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610790906114b3565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161087791906110af565b60405180910390a3505050565b6000610890848461062c565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff811461090a57818110156108fc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108f39061151f565b60405180910390fd5b61090984848484036106bb565b5b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361097f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610976906115b1565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036109ee576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109e590611643565b60405180910390fd5b6109f9838383610ea9565b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015610a7f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a76906116d5565b60405180910390fd5b8181036000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610b6d91906110af565b60405180910390a3610b80848484610eae565b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610bf5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bec90611767565b60405180910390fd5b610c0182600083610ea9565b60008060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015610c87576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c7e906117f9565b60405180910390fd5b8181036000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600260008282540392505081905550600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610d3a91906110af565b60405180910390a3610d4e83600084610eae565b505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610dc2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610db990611865565b60405180910390fd5b610dce60008383610ea9565b8060026000828254610de0919061127d565b92505081905550806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051610e9191906110af565b60405180910390a3610ea560008383610eae565b5050565b505050565b505050565b600081519050919050565b600082825260208201905092915050565b60005b83811015610eed578082015181840152602081019050610ed2565b60008484015250505050565b6000601f19601f8301169050919050565b6000610f1582610eb3565b610f1f8185610ebe565b9350610f2f818560208601610ecf565b610f3881610ef9565b840191505092915050565b60006020820190508181036000830152610f5d8184610f0a565b905092915050565b600080fd5b600074ffffffffffffffffffffffffffffffffffffffffff82169050919050565b610f9481610f6a565b8114610f9f57600080fd5b50565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000610fcd82610fa2565b9050919050565b600081359050610fe381610f8b565b610fec81610fc2565b905092915050565b6000819050919050565b61100781610ff4565b811461101257600080fd5b50565b60008135905061102481610ffe565b92915050565b6000806040838503121561104157611040610f65565b5b600061104f85828601610fd4565b925050602061106085828601611015565b9150509250929050565b60008115159050919050565b61107f8161106a565b82525050565b600060208201905061109a6000830184611076565b92915050565b6110a981610ff4565b82525050565b60006020820190506110c460008301846110a0565b92915050565b6000806000606084860312156110e3576110e2610f65565b5b60006110f186828701610fd4565b935050602061110286828701610fd4565b925050604061111386828701611015565b9150509250925092565b600060ff82169050919050565b6111338161111d565b82525050565b600060208201905061114e600083018461112a565b92915050565b60006020828403121561116a57611169610f65565b5b600061117884828501611015565b91505092915050565b60006020828403121561119757611196610f65565b5b60006111a584828501610fd4565b91505092915050565b600080604083850312156111c5576111c4610f65565b5b60006111d385828601610fd4565b92505060206111e485828601610fd4565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061123557607f821691505b602082108103611248576112476111ee565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061128882610ff4565b915061129383610ff4565b92508282019050808211156112ab576112aa61124e565b5b92915050565b7f4d6f636b555344543a204e6f7468696e6720746f206275726e00000000000000600082015250565b60006112e7601983610ebe565b91506112f2826112b1565b602082019050919050565b60006020820190508181036000830152611316816112da565b9050919050565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b6000611379602583610ebe565b91506113848261131d565b604082019050919050565b600060208201905081810360008301526113a88161136c565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b600061140b602483610ebe565b9150611416826113af565b604082019050919050565b6000602082019050818103600083015261143a816113fe565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b600061149d602283610ebe565b91506114a882611441565b604082019050919050565b600060208201905081810360008301526114cc81611490565b9050919050565b7f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000600082015250565b6000611509601d83610ebe565b9150611514826114d3565b602082019050919050565b60006020820190508181036000830152611538816114fc565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b600061159b602583610ebe565b91506115a68261153f565b604082019050919050565b600060208201905081810360008301526115ca8161158e565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b600061162d602383610ebe565b9150611638826115d1565b604082019050919050565b6000602082019050818103600083015261165c81611620565b9050919050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b60006116bf602683610ebe565b91506116ca82611663565b604082019050919050565b600060208201905081810360008301526116ee816116b2565b9050919050565b7f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360008201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b6000611751602183610ebe565b915061175c826116f5565b604082019050919050565b6000602082019050818103600083015261178081611744565b9050919050565b7f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60008201527f6365000000000000000000000000000000000000000000000000000000000000602082015250565b60006117e3602283610ebe565b91506117ee82611787565b604082019050919050565b60006020820190508181036000830152611812816117d6565b9050919050565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b600061184f601f83610ebe565b915061185a82611819565b602082019050919050565b6000602082019050818103600083015261187e81611842565b905091905056fea26474726f6e58221220e9fa28f94069e8bdb096aaa91496264e103a5b1682d15ae8976276ba708d33f764736f6c63430008120033", "sourceMap": "162:496:3:-:0;;;195:89;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1980:113:10;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2054:5;2046;:13;;;;;;:::i;:::-;;2079:7;2069;:17;;;;;;:::i;:::-;;1980:113;;246:31:3::1;252:10;264:12;246:5;;;:31;;:::i;:::-;162:496:::0;;8520:535:10;8622:1;8603:21;;:7;:21;;;8595:65;;;;;;;;;;;;:::i;:::-;;;;;;;;;8671:49;8700:1;8704:7;8713:6;8671:20;;;:49;;:::i;:::-;8747:6;8731:12;;:22;;;;;;;:::i;:::-;;;;;;;;8921:6;8899:9;:18;8909:7;8899:18;;;;;;;;;;;;;;;;:28;;;;;;;;;;;8973:7;8952:37;;8969:1;8952:37;;;8982:6;8952:37;;;;;;:::i;:::-;;;;;;;;9000:48;9028:1;9032:7;9041:6;9000:19;;;:48;;:::i;:::-;8520:535;;:::o;12073:91::-;;;;:::o;12752:90::-;;;;:::o;7:99:14:-;59:6;93:5;87:12;77:22;;7:99;;;:::o;112:180::-;160:77;157:1;150:88;257:4;254:1;247:15;281:4;278:1;271:15;298:180;346:77;343:1;336:88;443:4;440:1;433:15;467:4;464:1;457:15;484:320;528:6;565:1;559:4;555:12;545:22;;612:1;606:4;602:12;633:18;623:81;;689:4;681:6;677:17;667:27;;623:81;751:2;743:6;740:14;720:18;717:38;714:84;;770:18;;:::i;:::-;714:84;535:269;484:320;;;:::o;810:141::-;859:4;882:3;874:11;;905:3;902:1;895:14;939:4;936:1;926:18;918:26;;810:141;;;:::o;957:93::-;994:6;1041:2;1036;1029:5;1025:14;1021:23;1011:33;;957:93;;;:::o;1056:107::-;1100:8;1150:5;1144:4;1140:16;1119:37;;1056:107;;;;:::o;1169:393::-;1238:6;1288:1;1276:10;1272:18;1311:97;1341:66;1330:9;1311:97;:::i;:::-;1429:39;1459:8;1448:9;1429:39;:::i;:::-;1417:51;;1501:4;1497:9;1490:5;1486:21;1477:30;;1550:4;1540:8;1536:19;1529:5;1526:30;1516:40;;1245:317;;1169:393;;;;;:::o;1568:77::-;1605:7;1634:5;1623:16;;1568:77;;;:::o;1651:60::-;1679:3;1700:5;1693:12;;1651:60;;;:::o;1717:142::-;1767:9;1800:53;1818:34;1827:24;1845:5;1827:24;:::i;:::-;1818:34;:::i;:::-;1800:53;:::i;:::-;1787:66;;1717:142;;;:::o;1865:75::-;1908:3;1929:5;1922:12;;1865:75;;;:::o;1946:269::-;2056:39;2087:7;2056:39;:::i;:::-;2117:91;2166:41;2190:16;2166:41;:::i;:::-;2158:6;2151:4;2145:11;2117:91;:::i;:::-;2111:4;2104:105;2022:193;1946:269;;;:::o;2221:73::-;2266:3;2221:73;:::o;2300:189::-;2377:32;;:::i;:::-;2418:65;2476:6;2468;2462:4;2418:65;:::i;:::-;2353:136;2300:189;;:::o;2495:186::-;2555:120;2572:3;2565:5;2562:14;2555:120;;;2626:39;2663:1;2656:5;2626:39;:::i;:::-;2599:1;2592:5;2588:13;2579:22;;2555:120;;;2495:186;;:::o;2687:543::-;2788:2;2783:3;2780:11;2777:446;;;2822:38;2854:5;2822:38;:::i;:::-;2906:29;2924:10;2906:29;:::i;:::-;2896:8;2892:44;3089:2;3077:10;3074:18;3071:49;;;3110:8;3095:23;;3071:49;3133:80;3189:22;3207:3;3189:22;:::i;:::-;3179:8;3175:37;3162:11;3133:80;:::i;:::-;2792:431;;2777:446;2687:543;;;:::o;3236:117::-;3290:8;3340:5;3334:4;3330:16;3309:37;;3236:117;;;;:::o;3359:169::-;3403:6;3436:51;3484:1;3480:6;3472:5;3469:1;3465:13;3436:51;:::i;:::-;3432:56;3517:4;3511;3507:15;3497:25;;3410:118;3359:169;;;;:::o;3533:295::-;3609:4;3755:29;3780:3;3774:4;3755:29;:::i;:::-;3747:37;;3817:3;3814:1;3810:11;3804:4;3801:21;3793:29;;3533:295;;;;:::o;3833:1395::-;3950:37;3983:3;3950:37;:::i;:::-;4052:18;4044:6;4041:30;4038:56;;;4074:18;;:::i;:::-;4038:56;4118:38;4150:4;4144:11;4118:38;:::i;:::-;4203:67;4263:6;4255;4249:4;4203:67;:::i;:::-;4297:1;4321:4;4308:17;;4353:2;4345:6;4342:14;4370:1;4365:618;;;;5027:1;5044:6;5041:77;;;5093:9;5088:3;5084:19;5078:26;5069:35;;5041:77;5144:67;5204:6;5197:5;5144:67;:::i;:::-;5138:4;5131:81;5000:222;4335:887;;4365:618;4417:4;4413:9;4405:6;4401:22;4451:37;4483:4;4451:37;:::i;:::-;4510:1;4524:208;4538:7;4535:1;4532:14;4524:208;;;4617:9;4612:3;4608:19;4602:26;4594:6;4587:42;4668:1;4660:6;4656:14;4646:24;;4715:2;4704:9;4700:18;4687:31;;4561:4;4558:1;4554:12;4549:17;;4524:208;;;4760:6;4751:7;4748:19;4745:179;;;4818:9;4813:3;4809:19;4803:26;4861:48;4903:4;4895:6;4891:17;4880:9;4861:48;:::i;:::-;4853:6;4846:64;4768:156;4745:179;4970:1;4966;4958:6;4954:14;4950:22;4944:4;4937:36;4372:611;;;4335:887;;3925:1303;;;3833:1395;;:::o;5234:169::-;5318:11;5352:6;5347:3;5340:19;5392:4;5387:3;5383:14;5368:29;;5234:169;;;;:::o;5409:181::-;5549:33;5545:1;5537:6;5533:14;5526:57;5409:181;:::o;5596:366::-;5738:3;5759:67;5823:2;5818:3;5759:67;:::i;:::-;5752:74;;5835:93;5924:3;5835:93;:::i;:::-;5953:2;5948:3;5944:12;5937:19;;5596:366;;;:::o;5968:419::-;6134:4;6172:2;6161:9;6157:18;6149:26;;6221:9;6215:4;6211:20;6207:1;6196:9;6192:17;6185:47;6249:131;6375:4;6249:131;:::i;:::-;6241:139;;5968:419;;;:::o;6393:180::-;6441:77;6438:1;6431:88;6538:4;6535:1;6528:15;6562:4;6559:1;6552:15;6579:191;6619:3;6638:20;6656:1;6638:20;:::i;:::-;6633:25;;6672:20;6690:1;6672:20;:::i;:::-;6667:25;;6715:1;6712;6708:9;6701:16;;6736:3;6733:1;6730:10;6727:36;;;6743:18;;:::i;:::-;6727:36;6579:191;;;;:::o;6776:118::-;6863:24;6881:5;6863:24;:::i;:::-;6858:3;6851:37;6776:118;;:::o;6900:222::-;6993:4;7031:2;7020:9;7016:18;7008:26;;7044:71;7112:1;7101:9;7097:17;7088:6;7044:71;:::i;:::-;6900:222;;;;:::o;162:496:3:-;;;;;;;", "deployedSourceMap": "162:496:3:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2158:98:10;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4444:197;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3255:106;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5203:256;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3104:91;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5854:234;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;379:83:3;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;3419:125:10;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2369:102;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;468:188:3;;;:::i;:::-;;290:83;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6575:427:10;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3740:189;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3987:149;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2158:98;2212:13;2244:5;2237:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2158:98;:::o;4444:197::-;4527:4;4543:13;4559:12;:10;:12::i;:::-;4543:28;;4581:32;4590:5;4597:7;4606:6;4581:8;:32::i;:::-;4630:4;4623:11;;;4444:197;;;;:::o;3255:106::-;3316:7;3342:12;;3335:19;;3255:106;:::o;5203:256::-;5300:4;5316:15;5334:12;:10;:12::i;:::-;5316:30;;5356:38;5372:4;5378:7;5387:6;5356:15;:38::i;:::-;5404:27;5414:4;5420:2;5424:6;5404:9;:27::i;:::-;5448:4;5441:11;;;5203:256;;;;;:::o;3104:91::-;3162:5;3186:2;3179:9;;3104:91;:::o;5854:234::-;5942:4;5958:13;5974:12;:10;:12::i;:::-;5958:28;;5996:64;6005:5;6012:7;6049:10;6021:25;6031:5;6038:7;6021:9;:25::i;:::-;:38;;;;:::i;:::-;5996:8;:64::i;:::-;6077:4;6070:11;;;5854:234;;;;:::o;379:83:3:-;429:26;435:10;447:7;429:5;:26::i;:::-;379:83;:::o;3419:125:10:-;3493:7;3519:9;:18;3529:7;3519:18;;;;;;;;;;;;;;;;3512:25;;3419:125;;;:::o;2369:102::-;2425:13;2457:7;2450:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2369:102;:::o;468:188:3:-;506:18;527:21;537:10;527:9;:21::i;:::-;506:42;;579:1;566:10;:14;558:52;;;;;;;;;;;;:::i;:::-;;;;;;;;;620:29;626:10;638;620:5;:29::i;:::-;496:160;468:188::o;290:83::-;340:26;346:10;358:7;340:5;:26::i;:::-;290:83;:::o;6575:427:10:-;6668:4;6684:13;6700:12;:10;:12::i;:::-;6684:28;;6722:24;6749:25;6759:5;6766:7;6749:9;:25::i;:::-;6722:52;;6812:15;6792:16;:35;;6784:85;;;;;;;;;;;;:::i;:::-;;;;;;;;;6903:60;6912:5;6919:7;6947:15;6928:16;:34;6903:8;:60::i;:::-;6991:4;6984:11;;;;6575:427;;;;:::o;3740:189::-;3819:4;3835:13;3851:12;:10;:12::i;:::-;3835:28;;3873;3883:5;3890:2;3894:6;3873:9;:28::i;:::-;3918:4;3911:11;;;3740:189;;;;:::o;3987:149::-;4076:7;4102:11;:18;4114:5;4102:18;;;;;;;;;;;;;;;:27;4121:7;4102:27;;;;;;;;;;;;;;;;4095:34;;3987:149;;;;:::o;655:96:13:-;708:7;734:10;727:17;;655:96;:::o;10457:340:10:-;10575:1;10558:19;;:5;:19;;;10550:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;10655:1;10636:21;;:7;:21;;;10628:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;10737:6;10707:11;:18;10719:5;10707:18;;;;;;;;;;;;;;;:27;10726:7;10707:27;;;;;;;;;;;;;;;:36;;;;10774:7;10758:32;;10767:5;10758:32;;;10783:6;10758:32;;;;;;:::i;:::-;;;;;;;;10457:340;;;:::o;11078:411::-;11178:24;11205:25;11215:5;11222:7;11205:9;:25::i;:::-;11178:52;;11264:17;11244:16;:37;11240:243;;11325:6;11305:16;:26;;11297:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;11407:51;11416:5;11423:7;11451:6;11432:16;:25;11407:8;:51::i;:::-;11240:243;11168:321;11078:411;;;:::o;7456:788::-;7568:1;7552:18;;:4;:18;;;7544:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;7644:1;7630:16;;:2;:16;;;7622:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;7697:38;7718:4;7724:2;7728:6;7697:20;:38::i;:::-;7746:19;7768:9;:15;7778:4;7768:15;;;;;;;;;;;;;;;;7746:37;;7816:6;7801:11;:21;;7793:72;;;;;;;;;;;;:::i;:::-;;;;;;;;;7931:6;7917:11;:20;7899:9;:15;7909:4;7899:15;;;;;;;;;;;;;;;:38;;;;8131:6;8114:9;:13;8124:2;8114:13;;;;;;;;;;;;;;;;:23;;;;;;;;;;;8178:2;8163:26;;8172:4;8163:26;;;8182:6;8163:26;;;;;;:::i;:::-;;;;;;;;8200:37;8220:4;8226:2;8230:6;8200:19;:37::i;:::-;7534:710;7456:788;;;:::o;9375:659::-;9477:1;9458:21;;:7;:21;;;9450:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;9528:49;9549:7;9566:1;9570:6;9528:20;:49::i;:::-;9588:22;9613:9;:18;9623:7;9613:18;;;;;;;;;;;;;;;;9588:43;;9667:6;9649:14;:24;;9641:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;9784:6;9767:14;:23;9746:9;:18;9756:7;9746:18;;;;;;;;;;;;;;;:44;;;;9899:6;9883:12;;:22;;;;;;;;;;;9957:1;9931:37;;9940:7;9931:37;;;9961:6;9931:37;;;;;;:::i;:::-;;;;;;;;9979:48;9999:7;10016:1;10020:6;9979:19;:48::i;:::-;9440:594;9375:659;;:::o;8520:535::-;8622:1;8603:21;;:7;:21;;;8595:65;;;;;;;;;;;;:::i;:::-;;;;;;;;;8671:49;8700:1;8704:7;8713:6;8671:20;:49::i;:::-;8747:6;8731:12;;:22;;;;;;;:::i;:::-;;;;;;;;8921:6;8899:9;:18;8909:7;8899:18;;;;;;;;;;;;;;;;:28;;;;;;;;;;;8973:7;8952:37;;8969:1;8952:37;;;8982:6;8952:37;;;;;;:::i;:::-;;;;;;;;9000:48;9028:1;9032:7;9041:6;9000:19;:48::i;:::-;8520:535;;:::o;12073:91::-;;;;:::o;12752:90::-;;;;:::o;7:99:14:-;59:6;93:5;87:12;77:22;;7:99;;;:::o;112:169::-;196:11;230:6;225:3;218:19;270:4;265:3;261:14;246:29;;112:169;;;;:::o;287:246::-;368:1;378:113;392:6;389:1;386:13;378:113;;;477:1;472:3;468:11;462:18;458:1;453:3;449:11;442:39;414:2;411:1;407:10;402:15;;378:113;;;525:1;516:6;511:3;507:16;500:27;349:184;287:246;;;:::o;539:102::-;580:6;631:2;627:7;622:2;615:5;611:14;607:28;597:38;;539:102;;;:::o;647:377::-;735:3;763:39;796:5;763:39;:::i;:::-;818:71;882:6;877:3;818:71;:::i;:::-;811:78;;898:65;956:6;951:3;944:4;937:5;933:16;898:65;:::i;:::-;988:29;1010:6;988:29;:::i;:::-;983:3;979:39;972:46;;739:285;647:377;;;;:::o;1030:313::-;1143:4;1181:2;1170:9;1166:18;1158:26;;1230:9;1224:4;1220:20;1216:1;1205:9;1201:17;1194:47;1258:78;1331:4;1322:6;1258:78;:::i;:::-;1250:86;;1030:313;;;;:::o;1430:117::-;1539:1;1536;1529:12;1676:128;1713:7;1753:44;1746:5;1742:56;1731:67;;1676:128;;;:::o;1810:122::-;1883:24;1901:5;1883:24;:::i;:::-;1876:5;1873:35;1863:63;;1922:1;1919;1912:12;1863:63;1810:122;:::o;1938:126::-;1975:7;2015:42;2008:5;2004:54;1993:65;;1938:126;;;:::o;2070:96::-;2107:7;2136:24;2154:5;2136:24;:::i;:::-;2125:35;;2070:96;;;:::o;2172:181::-;2218:5;2256:6;2243:20;2234:29;;2272:33;2299:5;2272:33;:::i;:::-;2323:24;2341:5;2323:24;:::i;:::-;2314:33;;2172:181;;;;:::o;2359:77::-;2396:7;2425:5;2414:16;;2359:77;;;:::o;2442:122::-;2515:24;2533:5;2515:24;:::i;:::-;2508:5;2505:35;2495:63;;2554:1;2551;2544:12;2495:63;2442:122;:::o;2570:139::-;2616:5;2654:6;2641:20;2632:29;;2670:33;2697:5;2670:33;:::i;:::-;2570:139;;;;:::o;2715:474::-;2783:6;2791;2840:2;2828:9;2819:7;2815:23;2811:32;2808:119;;;2846:79;;:::i;:::-;2808:119;2966:1;2991:53;3036:7;3027:6;3016:9;3012:22;2991:53;:::i;:::-;2981:63;;2937:117;3093:2;3119:53;3164:7;3155:6;3144:9;3140:22;3119:53;:::i;:::-;3109:63;;3064:118;2715:474;;;;;:::o;3195:90::-;3229:7;3272:5;3265:13;3258:21;3247:32;;3195:90;;;:::o;3291:109::-;3372:21;3387:5;3372:21;:::i;:::-;3367:3;3360:34;3291:109;;:::o;3406:210::-;3493:4;3531:2;3520:9;3516:18;3508:26;;3544:65;3606:1;3595:9;3591:17;3582:6;3544:65;:::i;:::-;3406:210;;;;:::o;3622:118::-;3709:24;3727:5;3709:24;:::i;:::-;3704:3;3697:37;3622:118;;:::o;3746:222::-;3839:4;3877:2;3866:9;3862:18;3854:26;;3890:71;3958:1;3947:9;3943:17;3934:6;3890:71;:::i;:::-;3746:222;;;;:::o;3974:619::-;4051:6;4059;4067;4116:2;4104:9;4095:7;4091:23;4087:32;4084:119;;;4122:79;;:::i;:::-;4084:119;4242:1;4267:53;4312:7;4303:6;4292:9;4288:22;4267:53;:::i;:::-;4257:63;;4213:117;4369:2;4395:53;4440:7;4431:6;4420:9;4416:22;4395:53;:::i;:::-;4385:63;;4340:118;4497:2;4523:53;4568:7;4559:6;4548:9;4544:22;4523:53;:::i;:::-;4513:63;;4468:118;3974:619;;;;;:::o;4599:86::-;4634:7;4674:4;4667:5;4663:16;4652:27;;4599:86;;;:::o;4691:112::-;4774:22;4790:5;4774:22;:::i;:::-;4769:3;4762:35;4691:112;;:::o;4809:214::-;4898:4;4936:2;4925:9;4921:18;4913:26;;4949:67;5013:1;5002:9;4998:17;4989:6;4949:67;:::i;:::-;4809:214;;;;:::o;5029:329::-;5088:6;5137:2;5125:9;5116:7;5112:23;5108:32;5105:119;;;5143:79;;:::i;:::-;5105:119;5263:1;5288:53;5333:7;5324:6;5313:9;5309:22;5288:53;:::i;:::-;5278:63;;5234:117;5029:329;;;;:::o;5364:::-;5423:6;5472:2;5460:9;5451:7;5447:23;5443:32;5440:119;;;5478:79;;:::i;:::-;5440:119;5598:1;5623:53;5668:7;5659:6;5648:9;5644:22;5623:53;:::i;:::-;5613:63;;5569:117;5364:329;;;;:::o;5699:474::-;5767:6;5775;5824:2;5812:9;5803:7;5799:23;5795:32;5792:119;;;5830:79;;:::i;:::-;5792:119;5950:1;5975:53;6020:7;6011:6;6000:9;5996:22;5975:53;:::i;:::-;5965:63;;5921:117;6077:2;6103:53;6148:7;6139:6;6128:9;6124:22;6103:53;:::i;:::-;6093:63;;6048:118;5699:474;;;;;:::o;6179:180::-;6227:77;6224:1;6217:88;6324:4;6321:1;6314:15;6348:4;6345:1;6338:15;6365:320;6409:6;6446:1;6440:4;6436:12;6426:22;;6493:1;6487:4;6483:12;6514:18;6504:81;;6570:4;6562:6;6558:17;6548:27;;6504:81;6632:2;6624:6;6621:14;6601:18;6598:38;6595:84;;6651:18;;:::i;:::-;6595:84;6416:269;6365:320;;;:::o;6691:180::-;6739:77;6736:1;6729:88;6836:4;6833:1;6826:15;6860:4;6857:1;6850:15;6877:191;6917:3;6936:20;6954:1;6936:20;:::i;:::-;6931:25;;6970:20;6988:1;6970:20;:::i;:::-;6965:25;;7013:1;7010;7006:9;6999:16;;7034:3;7031:1;7028:10;7025:36;;;7041:18;;:::i;:::-;7025:36;6877:191;;;;:::o;7074:175::-;7214:27;7210:1;7202:6;7198:14;7191:51;7074:175;:::o;7255:366::-;7397:3;7418:67;7482:2;7477:3;7418:67;:::i;:::-;7411:74;;7494:93;7583:3;7494:93;:::i;:::-;7612:2;7607:3;7603:12;7596:19;;7255:366;;;:::o;7627:419::-;7793:4;7831:2;7820:9;7816:18;7808:26;;7880:9;7874:4;7870:20;7866:1;7855:9;7851:17;7844:47;7908:131;8034:4;7908:131;:::i;:::-;7900:139;;7627:419;;;:::o;8052:224::-;8192:34;8188:1;8180:6;8176:14;8169:58;8261:7;8256:2;8248:6;8244:15;8237:32;8052:224;:::o;8282:366::-;8424:3;8445:67;8509:2;8504:3;8445:67;:::i;:::-;8438:74;;8521:93;8610:3;8521:93;:::i;:::-;8639:2;8634:3;8630:12;8623:19;;8282:366;;;:::o;8654:419::-;8820:4;8858:2;8847:9;8843:18;8835:26;;8907:9;8901:4;8897:20;8893:1;8882:9;8878:17;8871:47;8935:131;9061:4;8935:131;:::i;:::-;8927:139;;8654:419;;;:::o;9079:223::-;9219:34;9215:1;9207:6;9203:14;9196:58;9288:6;9283:2;9275:6;9271:15;9264:31;9079:223;:::o;9308:366::-;9450:3;9471:67;9535:2;9530:3;9471:67;:::i;:::-;9464:74;;9547:93;9636:3;9547:93;:::i;:::-;9665:2;9660:3;9656:12;9649:19;;9308:366;;;:::o;9680:419::-;9846:4;9884:2;9873:9;9869:18;9861:26;;9933:9;9927:4;9923:20;9919:1;9908:9;9904:17;9897:47;9961:131;10087:4;9961:131;:::i;:::-;9953:139;;9680:419;;;:::o;10105:221::-;10245:34;10241:1;10233:6;10229:14;10222:58;10314:4;10309:2;10301:6;10297:15;10290:29;10105:221;:::o;10332:366::-;10474:3;10495:67;10559:2;10554:3;10495:67;:::i;:::-;10488:74;;10571:93;10660:3;10571:93;:::i;:::-;10689:2;10684:3;10680:12;10673:19;;10332:366;;;:::o;10704:419::-;10870:4;10908:2;10897:9;10893:18;10885:26;;10957:9;10951:4;10947:20;10943:1;10932:9;10928:17;10921:47;10985:131;11111:4;10985:131;:::i;:::-;10977:139;;10704:419;;;:::o;11129:179::-;11269:31;11265:1;11257:6;11253:14;11246:55;11129:179;:::o;11314:366::-;11456:3;11477:67;11541:2;11536:3;11477:67;:::i;:::-;11470:74;;11553:93;11642:3;11553:93;:::i;:::-;11671:2;11666:3;11662:12;11655:19;;11314:366;;;:::o;11686:419::-;11852:4;11890:2;11879:9;11875:18;11867:26;;11939:9;11933:4;11929:20;11925:1;11914:9;11910:17;11903:47;11967:131;12093:4;11967:131;:::i;:::-;11959:139;;11686:419;;;:::o;12111:224::-;12251:34;12247:1;12239:6;12235:14;12228:58;12320:7;12315:2;12307:6;12303:15;12296:32;12111:224;:::o;12341:366::-;12483:3;12504:67;12568:2;12563:3;12504:67;:::i;:::-;12497:74;;12580:93;12669:3;12580:93;:::i;:::-;12698:2;12693:3;12689:12;12682:19;;12341:366;;;:::o;12713:419::-;12879:4;12917:2;12906:9;12902:18;12894:26;;12966:9;12960:4;12956:20;12952:1;12941:9;12937:17;12930:47;12994:131;13120:4;12994:131;:::i;:::-;12986:139;;12713:419;;;:::o;13138:222::-;13278:34;13274:1;13266:6;13262:14;13255:58;13347:5;13342:2;13334:6;13330:15;13323:30;13138:222;:::o;13366:366::-;13508:3;13529:67;13593:2;13588:3;13529:67;:::i;:::-;13522:74;;13605:93;13694:3;13605:93;:::i;:::-;13723:2;13718:3;13714:12;13707:19;;13366:366;;;:::o;13738:419::-;13904:4;13942:2;13931:9;13927:18;13919:26;;13991:9;13985:4;13981:20;13977:1;13966:9;13962:17;13955:47;14019:131;14145:4;14019:131;:::i;:::-;14011:139;;13738:419;;;:::o;14163:225::-;14303:34;14299:1;14291:6;14287:14;14280:58;14372:8;14367:2;14359:6;14355:15;14348:33;14163:225;:::o;14394:366::-;14536:3;14557:67;14621:2;14616:3;14557:67;:::i;:::-;14550:74;;14633:93;14722:3;14633:93;:::i;:::-;14751:2;14746:3;14742:12;14735:19;;14394:366;;;:::o;14766:419::-;14932:4;14970:2;14959:9;14955:18;14947:26;;15019:9;15013:4;15009:20;15005:1;14994:9;14990:17;14983:47;15047:131;15173:4;15047:131;:::i;:::-;15039:139;;14766:419;;;:::o;15191:220::-;15331:34;15327:1;15319:6;15315:14;15308:58;15400:3;15395:2;15387:6;15383:15;15376:28;15191:220;:::o;15417:366::-;15559:3;15580:67;15644:2;15639:3;15580:67;:::i;:::-;15573:74;;15656:93;15745:3;15656:93;:::i;:::-;15774:2;15769:3;15765:12;15758:19;;15417:366;;;:::o;15789:419::-;15955:4;15993:2;15982:9;15978:18;15970:26;;16042:9;16036:4;16032:20;16028:1;16017:9;16013:17;16006:47;16070:131;16196:4;16070:131;:::i;:::-;16062:139;;15789:419;;;:::o;16214:221::-;16354:34;16350:1;16342:6;16338:14;16331:58;16423:4;16418:2;16410:6;16406:15;16399:29;16214:221;:::o;16441:366::-;16583:3;16604:67;16668:2;16663:3;16604:67;:::i;:::-;16597:74;;16680:93;16769:3;16680:93;:::i;:::-;16798:2;16793:3;16789:12;16782:19;;16441:366;;;:::o;16813:419::-;16979:4;17017:2;17006:9;17002:18;16994:26;;17066:9;17060:4;17056:20;17052:1;17041:9;17037:17;17030:47;17094:131;17220:4;17094:131;:::i;:::-;17086:139;;16813:419;;;:::o;17238:181::-;17378:33;17374:1;17366:6;17362:14;17355:57;17238:181;:::o;17425:366::-;17567:3;17588:67;17652:2;17647:3;17588:67;:::i;:::-;17581:74;;17664:93;17753:3;17664:93;:::i;:::-;17782:2;17777:3;17773:12;17766:19;;17425:366;;;:::o;17797:419::-;17963:4;18001:2;17990:9;17986:18;17978:26;;18050:9;18044:4;18040:20;18036:1;18025:9;18021:17;18014:47;18078:131;18204:4;18078:131;:::i;:::-;18070:139;;17797:419;;;:::o", "source": "//SPDX-License-Identifier: UNLICENSED\npragma solidity ^0.8.18;\n\nimport {ERC20} from \"@openzeppelin/contracts/token/ERC20/ERC20.sol\";\n\n/// @dev Mock mintable USDC\ncontract MockUSDT is ERC20 {\n constructor() ERC20(\"MockUDSC\", \"MUSDC\") {\n _mint(msg.sender, 1_000_000E18);\n }\n\n function mint(uint256 _amount) external {\n _mint(msg.sender, _amount);\n }\n\n function burn(uint256 _amount) external {\n _burn(msg.sender, _amount);\n }\n\n function burnAll() external {\n uint256 _balanceOf = balanceOf(msg.sender);\n require(_balanceOf > 0, \"MockUSDT: Nothing to burn\");\n _burn(msg.sender, _balanceOf);\n }\n}\n", - "sourcePath": "/Users/chibie/paycrest/contracts/contracts/mocks/MockUSDC.sol", + "sourcePath": "/Users/encryption/Downloads/projects/paycrest/paycrestContract/contracts/mocks/MockUSDC.sol", "ast": { - "absolutePath": "/Users/chibie/paycrest/contracts/contracts/mocks/MockUSDC.sol", + "absolutePath": "/Users/encryption/Downloads/projects/paycrest/paycrestContract/contracts/mocks/MockUSDC.sol", "exportedSymbols": { "ERC20": [ - 2479 + 2476 ], "MockUSDT": [ - 974 + 971 ] }, - "id": 975, + "id": 972, "license": "UNLICENSED", "nodeType": "SourceUnit", "nodes": [ { - "id": 906, + "id": 903, "literals": [ "solidity", "^", @@ -344,20 +344,20 @@ { "absolutePath": "@openzeppelin/contracts/token/ERC20/ERC20.sol", "file": "@openzeppelin/contracts/token/ERC20/ERC20.sol", - "id": 908, + "id": 905, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", - "scope": 975, - "sourceUnit": 2480, + "scope": 972, + "sourceUnit": 2477, "src": "64:68:3", "symbolAliases": [ { "foreign": { - "id": 907, + "id": 904, "name": "ERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2479, + "referencedDeclaration": 2476, "src": "72:5:3", "typeDescriptions": {} }, @@ -371,16 +371,16 @@ "baseContracts": [ { "baseName": { - "id": 910, + "id": 907, "name": "ERC20", "nameLocations": [ "183:5:3" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 2479, + "referencedDeclaration": 2476, "src": "183:5:3" }, - "id": 911, + "id": 908, "nodeType": "InheritanceSpecifier", "src": "183:5:3" } @@ -389,19 +389,19 @@ "contractDependencies": [], "contractKind": "contract", "documentation": { - "id": 909, + "id": 906, "nodeType": "StructuredDocumentation", "src": "134:28:3", "text": "@dev Mock mintable USDC" }, "fullyImplemented": true, - "id": 974, + "id": 971, "linearizedBaseContracts": [ - 974, - 2479, - 2582, - 2557, - 2612 + 971, + 2476, + 2579, + 2554, + 2609 ], "name": "MockUSDT", "nameLocation": "171:8:3", @@ -409,7 +409,7 @@ "nodes": [ { "body": { - "id": 924, + "id": 921, "nodeType": "Block", "src": "236:48:3", "statements": [ @@ -418,7 +418,7 @@ "arguments": [ { "expression": { - "id": 919, + "id": 916, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -429,7 +429,7 @@ "typeString": "msg" } }, - "id": 920, + "id": 917, "isConstant": false, "isLValue": false, "isPure": false, @@ -445,7 +445,7 @@ }, { "hexValue": "315f3030305f303030453138", - "id": 921, + "id": 918, "isConstant": false, "isLValue": false, "isPure": true, @@ -471,18 +471,18 @@ "typeString": "int_const 1000000000000000000000000" } ], - "id": 918, + "id": 915, "name": "_mint", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2296, + "referencedDeclaration": 2293, "src": "246:5:3", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 922, + "id": 919, "isConstant": false, "isLValue": false, "isPure": false, @@ -498,13 +498,13 @@ "typeString": "tuple()" } }, - "id": 923, + "id": 920, "nodeType": "ExpressionStatement", "src": "246:31:3" } ] }, - "id": 925, + "id": 922, "implemented": true, "kind": "constructor", "modifiers": [ @@ -512,7 +512,7 @@ "arguments": [ { "hexValue": "4d6f636b55445343", - "id": 914, + "id": 911, "isConstant": false, "isLValue": false, "isPure": true, @@ -528,7 +528,7 @@ }, { "hexValue": "4d55534443", - "id": 915, + "id": 912, "isConstant": false, "isLValue": false, "isPure": true, @@ -543,16 +543,16 @@ "value": "MUSDC" } ], - "id": 916, + "id": 913, "kind": "baseConstructorSpecifier", "modifierName": { - "id": 913, + "id": 910, "name": "ERC20", "nameLocations": [ "209:5:3" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 2479, + "referencedDeclaration": 2476, "src": "209:5:3" }, "nodeType": "ModifierInvocation", @@ -563,18 +563,18 @@ "nameLocation": "-1:-1:-1", "nodeType": "FunctionDefinition", "parameters": { - "id": 912, + "id": 909, "nodeType": "ParameterList", "parameters": [], "src": "206:2:3" }, "returnParameters": { - "id": 917, + "id": 914, "nodeType": "ParameterList", "parameters": [], "src": "236:0:3" }, - "scope": 974, + "scope": 971, "src": "195:89:3", "stateMutability": "nonpayable", "virtual": false, @@ -582,7 +582,7 @@ }, { "body": { - "id": 936, + "id": 933, "nodeType": "Block", "src": "330:43:3", "statements": [ @@ -591,7 +591,7 @@ "arguments": [ { "expression": { - "id": 931, + "id": 928, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -602,7 +602,7 @@ "typeString": "msg" } }, - "id": 932, + "id": 929, "isConstant": false, "isLValue": false, "isPure": false, @@ -617,11 +617,11 @@ } }, { - "id": 933, + "id": 930, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 927, + "referencedDeclaration": 924, "src": "358:7:3", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -640,18 +640,18 @@ "typeString": "uint256" } ], - "id": 930, + "id": 927, "name": "_mint", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2296, + "referencedDeclaration": 2293, "src": "340:5:3", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 934, + "id": 931, "isConstant": false, "isLValue": false, "isPure": false, @@ -667,14 +667,14 @@ "typeString": "tuple()" } }, - "id": 935, + "id": 932, "nodeType": "ExpressionStatement", "src": "340:26:3" } ] }, "functionSelector": "a0712d68", - "id": 937, + "id": 934, "implemented": true, "kind": "function", "modifiers": [], @@ -682,17 +682,17 @@ "nameLocation": "299:4:3", "nodeType": "FunctionDefinition", "parameters": { - "id": 928, + "id": 925, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 927, + "id": 924, "mutability": "mutable", "name": "_amount", "nameLocation": "312:7:3", "nodeType": "VariableDeclaration", - "scope": 937, + "scope": 934, "src": "304:15:3", "stateVariable": false, "storageLocation": "default", @@ -701,7 +701,7 @@ "typeString": "uint256" }, "typeName": { - "id": 926, + "id": 923, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "304:7:3", @@ -716,12 +716,12 @@ "src": "303:17:3" }, "returnParameters": { - "id": 929, + "id": 926, "nodeType": "ParameterList", "parameters": [], "src": "330:0:3" }, - "scope": 974, + "scope": 971, "src": "290:83:3", "stateMutability": "nonpayable", "virtual": false, @@ -729,7 +729,7 @@ }, { "body": { - "id": 948, + "id": 945, "nodeType": "Block", "src": "419:43:3", "statements": [ @@ -738,7 +738,7 @@ "arguments": [ { "expression": { - "id": 943, + "id": 940, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -749,7 +749,7 @@ "typeString": "msg" } }, - "id": 944, + "id": 941, "isConstant": false, "isLValue": false, "isPure": false, @@ -764,11 +764,11 @@ } }, { - "id": 945, + "id": 942, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 939, + "referencedDeclaration": 936, "src": "447:7:3", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -787,18 +787,18 @@ "typeString": "uint256" } ], - "id": 942, + "id": 939, "name": "_burn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2368, + "referencedDeclaration": 2365, "src": "429:5:3", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 946, + "id": 943, "isConstant": false, "isLValue": false, "isPure": false, @@ -814,14 +814,14 @@ "typeString": "tuple()" } }, - "id": 947, + "id": 944, "nodeType": "ExpressionStatement", "src": "429:26:3" } ] }, "functionSelector": "42966c68", - "id": 949, + "id": 946, "implemented": true, "kind": "function", "modifiers": [], @@ -829,17 +829,17 @@ "nameLocation": "388:4:3", "nodeType": "FunctionDefinition", "parameters": { - "id": 940, + "id": 937, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 939, + "id": 936, "mutability": "mutable", "name": "_amount", "nameLocation": "401:7:3", "nodeType": "VariableDeclaration", - "scope": 949, + "scope": 946, "src": "393:15:3", "stateVariable": false, "storageLocation": "default", @@ -848,7 +848,7 @@ "typeString": "uint256" }, "typeName": { - "id": 938, + "id": 935, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "393:7:3", @@ -863,12 +863,12 @@ "src": "392:17:3" }, "returnParameters": { - "id": 941, + "id": 938, "nodeType": "ParameterList", "parameters": [], "src": "419:0:3" }, - "scope": 974, + "scope": 971, "src": "379:83:3", "stateMutability": "nonpayable", "virtual": false, @@ -876,23 +876,23 @@ }, { "body": { - "id": 972, + "id": 969, "nodeType": "Block", "src": "496:160:3", "statements": [ { "assignments": [ - 953 + 950 ], "declarations": [ { "constant": false, - "id": 953, + "id": 950, "mutability": "mutable", "name": "_balanceOf", "nameLocation": "514:10:3", "nodeType": "VariableDeclaration", - "scope": 972, + "scope": 969, "src": "506:18:3", "stateVariable": false, "storageLocation": "default", @@ -901,7 +901,7 @@ "typeString": "uint256" }, "typeName": { - "id": 952, + "id": 949, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "506:7:3", @@ -913,12 +913,12 @@ "visibility": "internal" } ], - "id": 958, + "id": 955, "initialValue": { "arguments": [ { "expression": { - "id": 955, + "id": 952, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -929,7 +929,7 @@ "typeString": "msg" } }, - "id": 956, + "id": 953, "isConstant": false, "isLValue": false, "isPure": false, @@ -951,18 +951,18 @@ "typeString": "address" } ], - "id": 954, + "id": 951, "name": "balanceOf", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1991, + "referencedDeclaration": 1988, "src": "527:9:3", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view returns (uint256)" } }, - "id": 957, + "id": 954, "isConstant": false, "isLValue": false, "isPure": false, @@ -989,17 +989,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 962, + "id": 959, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 960, + "id": 957, "name": "_balanceOf", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 953, + "referencedDeclaration": 950, "src": "566:10:3", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1010,7 +1010,7 @@ "operator": ">", "rightExpression": { "hexValue": "30", - "id": 961, + "id": 958, "isConstant": false, "isLValue": false, "isPure": true, @@ -1032,7 +1032,7 @@ }, { "hexValue": "4d6f636b555344543a204e6f7468696e6720746f206275726e", - "id": 963, + "id": 960, "isConstant": false, "isLValue": false, "isPure": true, @@ -1058,7 +1058,7 @@ "typeString": "literal_string \"MockUSDT: Nothing to burn\"" } ], - "id": 959, + "id": 956, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -1072,7 +1072,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 964, + "id": 961, "isConstant": false, "isLValue": false, "isPure": false, @@ -1088,7 +1088,7 @@ "typeString": "tuple()" } }, - "id": 965, + "id": 962, "nodeType": "ExpressionStatement", "src": "558:52:3" }, @@ -1097,7 +1097,7 @@ "arguments": [ { "expression": { - "id": 967, + "id": 964, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -1108,7 +1108,7 @@ "typeString": "msg" } }, - "id": 968, + "id": 965, "isConstant": false, "isLValue": false, "isPure": false, @@ -1123,11 +1123,11 @@ } }, { - "id": 969, + "id": 966, "name": "_balanceOf", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 953, + "referencedDeclaration": 950, "src": "638:10:3", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1146,18 +1146,18 @@ "typeString": "uint256" } ], - "id": 966, + "id": 963, "name": "_burn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2368, + "referencedDeclaration": 2365, "src": "620:5:3", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 970, + "id": 967, "isConstant": false, "isLValue": false, "isPure": false, @@ -1173,14 +1173,14 @@ "typeString": "tuple()" } }, - "id": 971, + "id": 968, "nodeType": "ExpressionStatement", "src": "620:29:3" } ] }, "functionSelector": "9975038c", - "id": 973, + "id": 970, "implemented": true, "kind": "function", "modifiers": [], @@ -1188,25 +1188,25 @@ "nameLocation": "477:7:3", "nodeType": "FunctionDefinition", "parameters": { - "id": 950, + "id": 947, "nodeType": "ParameterList", "parameters": [], "src": "484:2:3" }, "returnParameters": { - "id": 951, + "id": 948, "nodeType": "ParameterList", "parameters": [], "src": "496:0:3" }, - "scope": 974, + "scope": 971, "src": "468:188:3", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" } ], - "scope": 975, + "scope": 972, "src": "162:496:3", "usedErrors": [] } @@ -1214,21 +1214,21 @@ "src": "38:621:3" }, "legacyAST": { - "absolutePath": "/Users/chibie/paycrest/contracts/contracts/mocks/MockUSDC.sol", + "absolutePath": "/Users/encryption/Downloads/projects/paycrest/paycrestContract/contracts/mocks/MockUSDC.sol", "exportedSymbols": { "ERC20": [ - 2479 + 2476 ], "MockUSDT": [ - 974 + 971 ] }, - "id": 975, + "id": 972, "license": "UNLICENSED", "nodeType": "SourceUnit", "nodes": [ { - "id": 906, + "id": 903, "literals": [ "solidity", "^", @@ -1241,20 +1241,20 @@ { "absolutePath": "@openzeppelin/contracts/token/ERC20/ERC20.sol", "file": "@openzeppelin/contracts/token/ERC20/ERC20.sol", - "id": 908, + "id": 905, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", - "scope": 975, - "sourceUnit": 2480, + "scope": 972, + "sourceUnit": 2477, "src": "64:68:3", "symbolAliases": [ { "foreign": { - "id": 907, + "id": 904, "name": "ERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2479, + "referencedDeclaration": 2476, "src": "72:5:3", "typeDescriptions": {} }, @@ -1268,16 +1268,16 @@ "baseContracts": [ { "baseName": { - "id": 910, + "id": 907, "name": "ERC20", "nameLocations": [ "183:5:3" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 2479, + "referencedDeclaration": 2476, "src": "183:5:3" }, - "id": 911, + "id": 908, "nodeType": "InheritanceSpecifier", "src": "183:5:3" } @@ -1286,19 +1286,19 @@ "contractDependencies": [], "contractKind": "contract", "documentation": { - "id": 909, + "id": 906, "nodeType": "StructuredDocumentation", "src": "134:28:3", "text": "@dev Mock mintable USDC" }, "fullyImplemented": true, - "id": 974, + "id": 971, "linearizedBaseContracts": [ - 974, - 2479, - 2582, - 2557, - 2612 + 971, + 2476, + 2579, + 2554, + 2609 ], "name": "MockUSDT", "nameLocation": "171:8:3", @@ -1306,7 +1306,7 @@ "nodes": [ { "body": { - "id": 924, + "id": 921, "nodeType": "Block", "src": "236:48:3", "statements": [ @@ -1315,7 +1315,7 @@ "arguments": [ { "expression": { - "id": 919, + "id": 916, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -1326,7 +1326,7 @@ "typeString": "msg" } }, - "id": 920, + "id": 917, "isConstant": false, "isLValue": false, "isPure": false, @@ -1342,7 +1342,7 @@ }, { "hexValue": "315f3030305f303030453138", - "id": 921, + "id": 918, "isConstant": false, "isLValue": false, "isPure": true, @@ -1368,18 +1368,18 @@ "typeString": "int_const 1000000000000000000000000" } ], - "id": 918, + "id": 915, "name": "_mint", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2296, + "referencedDeclaration": 2293, "src": "246:5:3", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 922, + "id": 919, "isConstant": false, "isLValue": false, "isPure": false, @@ -1395,13 +1395,13 @@ "typeString": "tuple()" } }, - "id": 923, + "id": 920, "nodeType": "ExpressionStatement", "src": "246:31:3" } ] }, - "id": 925, + "id": 922, "implemented": true, "kind": "constructor", "modifiers": [ @@ -1409,7 +1409,7 @@ "arguments": [ { "hexValue": "4d6f636b55445343", - "id": 914, + "id": 911, "isConstant": false, "isLValue": false, "isPure": true, @@ -1425,7 +1425,7 @@ }, { "hexValue": "4d55534443", - "id": 915, + "id": 912, "isConstant": false, "isLValue": false, "isPure": true, @@ -1440,16 +1440,16 @@ "value": "MUSDC" } ], - "id": 916, + "id": 913, "kind": "baseConstructorSpecifier", "modifierName": { - "id": 913, + "id": 910, "name": "ERC20", "nameLocations": [ "209:5:3" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 2479, + "referencedDeclaration": 2476, "src": "209:5:3" }, "nodeType": "ModifierInvocation", @@ -1460,18 +1460,18 @@ "nameLocation": "-1:-1:-1", "nodeType": "FunctionDefinition", "parameters": { - "id": 912, + "id": 909, "nodeType": "ParameterList", "parameters": [], "src": "206:2:3" }, "returnParameters": { - "id": 917, + "id": 914, "nodeType": "ParameterList", "parameters": [], "src": "236:0:3" }, - "scope": 974, + "scope": 971, "src": "195:89:3", "stateMutability": "nonpayable", "virtual": false, @@ -1479,7 +1479,7 @@ }, { "body": { - "id": 936, + "id": 933, "nodeType": "Block", "src": "330:43:3", "statements": [ @@ -1488,7 +1488,7 @@ "arguments": [ { "expression": { - "id": 931, + "id": 928, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -1499,7 +1499,7 @@ "typeString": "msg" } }, - "id": 932, + "id": 929, "isConstant": false, "isLValue": false, "isPure": false, @@ -1514,11 +1514,11 @@ } }, { - "id": 933, + "id": 930, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 927, + "referencedDeclaration": 924, "src": "358:7:3", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1537,18 +1537,18 @@ "typeString": "uint256" } ], - "id": 930, + "id": 927, "name": "_mint", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2296, + "referencedDeclaration": 2293, "src": "340:5:3", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 934, + "id": 931, "isConstant": false, "isLValue": false, "isPure": false, @@ -1564,14 +1564,14 @@ "typeString": "tuple()" } }, - "id": 935, + "id": 932, "nodeType": "ExpressionStatement", "src": "340:26:3" } ] }, "functionSelector": "a0712d68", - "id": 937, + "id": 934, "implemented": true, "kind": "function", "modifiers": [], @@ -1579,17 +1579,17 @@ "nameLocation": "299:4:3", "nodeType": "FunctionDefinition", "parameters": { - "id": 928, + "id": 925, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 927, + "id": 924, "mutability": "mutable", "name": "_amount", "nameLocation": "312:7:3", "nodeType": "VariableDeclaration", - "scope": 937, + "scope": 934, "src": "304:15:3", "stateVariable": false, "storageLocation": "default", @@ -1598,7 +1598,7 @@ "typeString": "uint256" }, "typeName": { - "id": 926, + "id": 923, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "304:7:3", @@ -1613,12 +1613,12 @@ "src": "303:17:3" }, "returnParameters": { - "id": 929, + "id": 926, "nodeType": "ParameterList", "parameters": [], "src": "330:0:3" }, - "scope": 974, + "scope": 971, "src": "290:83:3", "stateMutability": "nonpayable", "virtual": false, @@ -1626,7 +1626,7 @@ }, { "body": { - "id": 948, + "id": 945, "nodeType": "Block", "src": "419:43:3", "statements": [ @@ -1635,7 +1635,7 @@ "arguments": [ { "expression": { - "id": 943, + "id": 940, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -1646,7 +1646,7 @@ "typeString": "msg" } }, - "id": 944, + "id": 941, "isConstant": false, "isLValue": false, "isPure": false, @@ -1661,11 +1661,11 @@ } }, { - "id": 945, + "id": 942, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 939, + "referencedDeclaration": 936, "src": "447:7:3", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1684,18 +1684,18 @@ "typeString": "uint256" } ], - "id": 942, + "id": 939, "name": "_burn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2368, + "referencedDeclaration": 2365, "src": "429:5:3", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 946, + "id": 943, "isConstant": false, "isLValue": false, "isPure": false, @@ -1711,14 +1711,14 @@ "typeString": "tuple()" } }, - "id": 947, + "id": 944, "nodeType": "ExpressionStatement", "src": "429:26:3" } ] }, "functionSelector": "42966c68", - "id": 949, + "id": 946, "implemented": true, "kind": "function", "modifiers": [], @@ -1726,17 +1726,17 @@ "nameLocation": "388:4:3", "nodeType": "FunctionDefinition", "parameters": { - "id": 940, + "id": 937, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 939, + "id": 936, "mutability": "mutable", "name": "_amount", "nameLocation": "401:7:3", "nodeType": "VariableDeclaration", - "scope": 949, + "scope": 946, "src": "393:15:3", "stateVariable": false, "storageLocation": "default", @@ -1745,7 +1745,7 @@ "typeString": "uint256" }, "typeName": { - "id": 938, + "id": 935, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "393:7:3", @@ -1760,12 +1760,12 @@ "src": "392:17:3" }, "returnParameters": { - "id": 941, + "id": 938, "nodeType": "ParameterList", "parameters": [], "src": "419:0:3" }, - "scope": 974, + "scope": 971, "src": "379:83:3", "stateMutability": "nonpayable", "virtual": false, @@ -1773,23 +1773,23 @@ }, { "body": { - "id": 972, + "id": 969, "nodeType": "Block", "src": "496:160:3", "statements": [ { "assignments": [ - 953 + 950 ], "declarations": [ { "constant": false, - "id": 953, + "id": 950, "mutability": "mutable", "name": "_balanceOf", "nameLocation": "514:10:3", "nodeType": "VariableDeclaration", - "scope": 972, + "scope": 969, "src": "506:18:3", "stateVariable": false, "storageLocation": "default", @@ -1798,7 +1798,7 @@ "typeString": "uint256" }, "typeName": { - "id": 952, + "id": 949, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "506:7:3", @@ -1810,12 +1810,12 @@ "visibility": "internal" } ], - "id": 958, + "id": 955, "initialValue": { "arguments": [ { "expression": { - "id": 955, + "id": 952, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -1826,7 +1826,7 @@ "typeString": "msg" } }, - "id": 956, + "id": 953, "isConstant": false, "isLValue": false, "isPure": false, @@ -1848,18 +1848,18 @@ "typeString": "address" } ], - "id": 954, + "id": 951, "name": "balanceOf", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1991, + "referencedDeclaration": 1988, "src": "527:9:3", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view returns (uint256)" } }, - "id": 957, + "id": 954, "isConstant": false, "isLValue": false, "isPure": false, @@ -1886,17 +1886,17 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 962, + "id": 959, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 960, + "id": 957, "name": "_balanceOf", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 953, + "referencedDeclaration": 950, "src": "566:10:3", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1907,7 +1907,7 @@ "operator": ">", "rightExpression": { "hexValue": "30", - "id": 961, + "id": 958, "isConstant": false, "isLValue": false, "isPure": true, @@ -1929,7 +1929,7 @@ }, { "hexValue": "4d6f636b555344543a204e6f7468696e6720746f206275726e", - "id": 963, + "id": 960, "isConstant": false, "isLValue": false, "isPure": true, @@ -1955,7 +1955,7 @@ "typeString": "literal_string \"MockUSDT: Nothing to burn\"" } ], - "id": 959, + "id": 956, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -1969,7 +1969,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 964, + "id": 961, "isConstant": false, "isLValue": false, "isPure": false, @@ -1985,7 +1985,7 @@ "typeString": "tuple()" } }, - "id": 965, + "id": 962, "nodeType": "ExpressionStatement", "src": "558:52:3" }, @@ -1994,7 +1994,7 @@ "arguments": [ { "expression": { - "id": 967, + "id": 964, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -2005,7 +2005,7 @@ "typeString": "msg" } }, - "id": 968, + "id": 965, "isConstant": false, "isLValue": false, "isPure": false, @@ -2020,11 +2020,11 @@ } }, { - "id": 969, + "id": 966, "name": "_balanceOf", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 953, + "referencedDeclaration": 950, "src": "638:10:3", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -2043,18 +2043,18 @@ "typeString": "uint256" } ], - "id": 966, + "id": 963, "name": "_burn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2368, + "referencedDeclaration": 2365, "src": "620:5:3", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 970, + "id": 967, "isConstant": false, "isLValue": false, "isPure": false, @@ -2070,14 +2070,14 @@ "typeString": "tuple()" } }, - "id": 971, + "id": 968, "nodeType": "ExpressionStatement", "src": "620:29:3" } ] }, "functionSelector": "9975038c", - "id": 973, + "id": 970, "implemented": true, "kind": "function", "modifiers": [], @@ -2085,25 +2085,25 @@ "nameLocation": "477:7:3", "nodeType": "FunctionDefinition", "parameters": { - "id": 950, + "id": 947, "nodeType": "ParameterList", "parameters": [], "src": "484:2:3" }, "returnParameters": { - "id": 951, + "id": 948, "nodeType": "ParameterList", "parameters": [], "src": "496:0:3" }, - "scope": 974, + "scope": 971, "src": "468:188:3", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" } ], - "scope": 975, + "scope": 972, "src": "162:496:3", "usedErrors": [] } @@ -2116,5 +2116,5 @@ }, "networks": {}, "schemaVersion": "2.0.1", - "updatedAt": "2024-06-20T09:33:52.550Z" + "updatedAt": "2024-06-27T12:24:25.250Z" } \ No newline at end of file diff --git a/build/contracts/Ownable2StepUpgradeable.json b/build/contracts/Ownable2StepUpgradeable.json index 5176e16..54737b5 100644 --- a/build/contracts/Ownable2StepUpgradeable.json +++ b/build/contracts/Ownable2StepUpgradeable.json @@ -116,24 +116,24 @@ "absolutePath": "@openzeppelin/contracts-upgradeable/access/Ownable2StepUpgradeable.sol", "exportedSymbols": { "ContextUpgradeable": [ - 1892 + 1889 ], "Initializable": [ - 1383 + 1380 ], "Ownable2StepUpgradeable": [ - 1081 + 1078 ], "OwnableUpgradeable": [ - 1214 + 1211 ] }, - "id": 1082, + "id": 1079, "license": "MIT", "nodeType": "SourceUnit", "nodes": [ { - "id": 976, + "id": 973, "literals": [ "solidity", "^", @@ -146,11 +146,11 @@ { "absolutePath": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol", "file": "./OwnableUpgradeable.sol", - "id": 977, + "id": 974, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", - "scope": 1082, - "sourceUnit": 1215, + "scope": 1079, + "sourceUnit": 1212, "src": "132:34:4", "symbolAliases": [], "unitAlias": "" @@ -158,20 +158,20 @@ { "absolutePath": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol", "file": "../proxy/utils/Initializable.sol", - "id": 979, + "id": 976, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", - "scope": 1082, - "sourceUnit": 1384, + "scope": 1079, + "sourceUnit": 1381, "src": "167:63:4", "symbolAliases": [ { "foreign": { - "id": 978, + "id": 975, "name": "Initializable", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1383, + "referencedDeclaration": 1380, "src": "175:13:4", "typeDescriptions": {} }, @@ -185,31 +185,31 @@ "baseContracts": [ { "baseName": { - "id": 981, + "id": 978, "name": "Initializable", "nameLocations": [ "719:13:4" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 1383, + "referencedDeclaration": 1380, "src": "719:13:4" }, - "id": 982, + "id": 979, "nodeType": "InheritanceSpecifier", "src": "719:13:4" }, { "baseName": { - "id": 983, + "id": 980, "name": "OwnableUpgradeable", "nameLocations": [ "734:18:4" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 1214, + "referencedDeclaration": 1211, "src": "734:18:4" }, - "id": 984, + "id": 981, "nodeType": "InheritanceSpecifier", "src": "734:18:4" } @@ -218,18 +218,18 @@ "contractDependencies": [], "contractKind": "contract", "documentation": { - "id": 980, + "id": 977, "nodeType": "StructuredDocumentation", "src": "232:441:4", "text": " @dev Contract module which provides access control mechanism, where\n there is an account (an owner) that can be granted exclusive access to\n specific functions.\n By default, the owner account will be the one that deploys the contract. This\n can later be changed with {transferOwnership} and {acceptOwnership}.\n This module is used through inheritance. It will make available all functions\n from parent (Ownable)." }, "fullyImplemented": true, - "id": 1081, + "id": 1078, "linearizedBaseContracts": [ - 1081, - 1214, - 1892, - 1383 + 1078, + 1211, + 1889, + 1380 ], "name": "Ownable2StepUpgradeable", "nameLocation": "692:23:4", @@ -237,12 +237,12 @@ "nodes": [ { "constant": false, - "id": 986, + "id": 983, "mutability": "mutable", "name": "_pendingOwner", "nameLocation": "775:13:4", "nodeType": "VariableDeclaration", - "scope": 1081, + "scope": 1078, "src": "759:29:4", "stateVariable": true, "storageLocation": "default", @@ -251,7 +251,7 @@ "typeString": "address" }, "typeName": { - "id": 985, + "id": 982, "name": "address", "nodeType": "ElementaryTypeName", "src": "759:7:4", @@ -266,23 +266,23 @@ { "anonymous": false, "eventSelector": "38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e22700", - "id": 992, + "id": 989, "name": "OwnershipTransferStarted", "nameLocation": "801:24:4", "nodeType": "EventDefinition", "parameters": { - "id": 991, + "id": 988, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 988, + "id": 985, "indexed": true, "mutability": "mutable", "name": "previousOwner", "nameLocation": "842:13:4", "nodeType": "VariableDeclaration", - "scope": 992, + "scope": 989, "src": "826:29:4", "stateVariable": false, "storageLocation": "default", @@ -291,7 +291,7 @@ "typeString": "address" }, "typeName": { - "id": 987, + "id": 984, "name": "address", "nodeType": "ElementaryTypeName", "src": "826:7:4", @@ -305,13 +305,13 @@ }, { "constant": false, - "id": 990, + "id": 987, "indexed": true, "mutability": "mutable", "name": "newOwner", "nameLocation": "873:8:4", "nodeType": "VariableDeclaration", - "scope": 992, + "scope": 989, "src": "857:24:4", "stateVariable": false, "storageLocation": "default", @@ -320,7 +320,7 @@ "typeString": "address" }, "typeName": { - "id": 989, + "id": 986, "name": "address", "nodeType": "ElementaryTypeName", "src": "857:7:4", @@ -339,7 +339,7 @@ }, { "body": { - "id": 1000, + "id": 997, "nodeType": "Block", "src": "946:43:4", "statements": [ @@ -348,18 +348,18 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 997, + "id": 994, "name": "__Ownable_init_unchained", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1120, + "referencedDeclaration": 1117, "src": "956:24:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", "typeString": "function ()" } }, - "id": 998, + "id": 995, "isConstant": false, "isLValue": false, "isPure": false, @@ -375,27 +375,27 @@ "typeString": "tuple()" } }, - "id": 999, + "id": 996, "nodeType": "ExpressionStatement", "src": "956:26:4" } ] }, - "id": 1001, + "id": 998, "implemented": true, "kind": "function", "modifiers": [ { - "id": 995, + "id": 992, "kind": "modifierInvocation", "modifierName": { - "id": 994, + "id": 991, "name": "onlyInitializing", "nameLocations": [ "929:16:4" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 1328, + "referencedDeclaration": 1325, "src": "929:16:4" }, "nodeType": "ModifierInvocation", @@ -406,18 +406,18 @@ "nameLocation": "898:19:4", "nodeType": "FunctionDefinition", "parameters": { - "id": 993, + "id": 990, "nodeType": "ParameterList", "parameters": [], "src": "917:2:4" }, "returnParameters": { - "id": 996, + "id": 993, "nodeType": "ParameterList", "parameters": [], "src": "946:0:4" }, - "scope": 1081, + "scope": 1078, "src": "889:100:4", "stateMutability": "nonpayable", "virtual": false, @@ -425,26 +425,26 @@ }, { "body": { - "id": 1006, + "id": 1003, "nodeType": "Block", "src": "1062:7:4", "statements": [] }, - "id": 1007, + "id": 1004, "implemented": true, "kind": "function", "modifiers": [ { - "id": 1004, + "id": 1001, "kind": "modifierInvocation", "modifierName": { - "id": 1003, + "id": 1000, "name": "onlyInitializing", "nameLocations": [ "1045:16:4" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 1328, + "referencedDeclaration": 1325, "src": "1045:16:4" }, "nodeType": "ModifierInvocation", @@ -455,18 +455,18 @@ "nameLocation": "1004:29:4", "nodeType": "FunctionDefinition", "parameters": { - "id": 1002, + "id": 999, "nodeType": "ParameterList", "parameters": [], "src": "1033:2:4" }, "returnParameters": { - "id": 1005, + "id": 1002, "nodeType": "ParameterList", "parameters": [], "src": "1062:0:4" }, - "scope": 1081, + "scope": 1078, "src": "995:74:4", "stateMutability": "nonpayable", "virtual": false, @@ -474,38 +474,38 @@ }, { "body": { - "id": 1015, + "id": 1012, "nodeType": "Block", "src": "1206:37:4", "statements": [ { "expression": { - "id": 1013, + "id": 1010, "name": "_pendingOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 986, + "referencedDeclaration": 983, "src": "1223:13:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "functionReturnParameters": 1012, - "id": 1014, + "functionReturnParameters": 1009, + "id": 1011, "nodeType": "Return", "src": "1216:20:4" } ] }, "documentation": { - "id": 1008, + "id": 1005, "nodeType": "StructuredDocumentation", "src": "1074:65:4", "text": " @dev Returns the address of the pending owner." }, "functionSelector": "e30c3978", - "id": 1016, + "id": 1013, "implemented": true, "kind": "function", "modifiers": [], @@ -513,23 +513,23 @@ "nameLocation": "1153:12:4", "nodeType": "FunctionDefinition", "parameters": { - "id": 1009, + "id": 1006, "nodeType": "ParameterList", "parameters": [], "src": "1165:2:4" }, "returnParameters": { - "id": 1012, + "id": 1009, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1011, + "id": 1008, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 1016, + "scope": 1013, "src": "1197:7:4", "stateVariable": false, "storageLocation": "default", @@ -538,7 +538,7 @@ "typeString": "address" }, "typeName": { - "id": 1010, + "id": 1007, "name": "address", "nodeType": "ElementaryTypeName", "src": "1197:7:4", @@ -553,7 +553,7 @@ ], "src": "1196:9:4" }, - "scope": 1081, + "scope": 1078, "src": "1144:99:4", "stateMutability": "view", "virtual": true, @@ -561,26 +561,26 @@ }, { "baseFunctions": [ - 1188 + 1185 ], "body": { - "id": 1035, + "id": 1032, "nodeType": "Block", "src": "1515:99:4", "statements": [ { "expression": { - "id": 1027, + "id": 1024, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 1025, + "id": 1022, "name": "_pendingOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 986, + "referencedDeclaration": 983, "src": "1525:13:4", "typeDescriptions": { "typeIdentifier": "t_address", @@ -590,11 +590,11 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 1026, + "id": 1023, "name": "newOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1019, + "referencedDeclaration": 1016, "src": "1541:8:4", "typeDescriptions": { "typeIdentifier": "t_address", @@ -607,7 +607,7 @@ "typeString": "address" } }, - "id": 1028, + "id": 1025, "nodeType": "ExpressionStatement", "src": "1525:24:4" }, @@ -618,18 +618,18 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 1030, + "id": 1027, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1137, + "referencedDeclaration": 1134, "src": "1589:5:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", "typeString": "function () view returns (address)" } }, - "id": 1031, + "id": 1028, "isConstant": false, "isLValue": false, "isPure": false, @@ -646,11 +646,11 @@ } }, { - "id": 1032, + "id": 1029, "name": "newOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1019, + "referencedDeclaration": 1016, "src": "1598:8:4", "typeDescriptions": { "typeIdentifier": "t_address", @@ -669,18 +669,18 @@ "typeString": "address" } ], - "id": 1029, + "id": 1026, "name": "OwnershipTransferStarted", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 992, + "referencedDeclaration": 989, "src": "1564:24:4", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$returns$__$", "typeString": "function (address,address)" } }, - "id": 1033, + "id": 1030, "isConstant": false, "isLValue": false, "isPure": false, @@ -696,34 +696,34 @@ "typeString": "tuple()" } }, - "id": 1034, + "id": 1031, "nodeType": "EmitStatement", "src": "1559:48:4" } ] }, "documentation": { - "id": 1017, + "id": 1014, "nodeType": "StructuredDocumentation", "src": "1249:182:4", "text": " @dev Starts the ownership transfer of the contract to a new account. Replaces the pending transfer if there is one.\n Can only be called by the current owner." }, "functionSelector": "f2fde38b", - "id": 1036, + "id": 1033, "implemented": true, "kind": "function", "modifiers": [ { - "id": 1023, + "id": 1020, "kind": "modifierInvocation", "modifierName": { - "id": 1022, + "id": 1019, "name": "onlyOwner", "nameLocations": [ "1505:9:4" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 1128, + "referencedDeclaration": 1125, "src": "1505:9:4" }, "nodeType": "ModifierInvocation", @@ -734,23 +734,23 @@ "nameLocation": "1445:17:4", "nodeType": "FunctionDefinition", "overrides": { - "id": 1021, + "id": 1018, "nodeType": "OverrideSpecifier", "overrides": [], "src": "1496:8:4" }, "parameters": { - "id": 1020, + "id": 1017, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1019, + "id": 1016, "mutability": "mutable", "name": "newOwner", "nameLocation": "1471:8:4", "nodeType": "VariableDeclaration", - "scope": 1036, + "scope": 1033, "src": "1463:16:4", "stateVariable": false, "storageLocation": "default", @@ -759,7 +759,7 @@ "typeString": "address" }, "typeName": { - "id": 1018, + "id": 1015, "name": "address", "nodeType": "ElementaryTypeName", "src": "1463:7:4", @@ -775,12 +775,12 @@ "src": "1462:18:4" }, "returnParameters": { - "id": 1024, + "id": 1021, "nodeType": "ParameterList", "parameters": [], "src": "1515:0:4" }, - "scope": 1081, + "scope": 1078, "src": "1436:178:4", "stateMutability": "nonpayable", "virtual": true, @@ -788,16 +788,16 @@ }, { "baseFunctions": [ - 1208 + 1205 ], "body": { - "id": 1052, + "id": 1049, "nodeType": "Block", "src": "1870:81:4", "statements": [ { "expression": { - "id": 1044, + "id": 1041, "isConstant": false, "isLValue": false, "isPure": false, @@ -807,11 +807,11 @@ "prefix": true, "src": "1880:20:4", "subExpression": { - "id": 1043, + "id": 1040, "name": "_pendingOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 986, + "referencedDeclaration": 983, "src": "1887:13:4", "typeDescriptions": { "typeIdentifier": "t_address", @@ -823,7 +823,7 @@ "typeString": "tuple()" } }, - "id": 1045, + "id": 1042, "nodeType": "ExpressionStatement", "src": "1880:20:4" }, @@ -831,11 +831,11 @@ "expression": { "arguments": [ { - "id": 1049, + "id": 1046, "name": "newOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1039, + "referencedDeclaration": 1036, "src": "1935:8:4", "typeDescriptions": { "typeIdentifier": "t_address", @@ -851,18 +851,18 @@ } ], "expression": { - "id": 1046, + "id": 1043, "name": "super", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967271, "src": "1910:5:4", "typeDescriptions": { - "typeIdentifier": "t_type$_t_super$_Ownable2StepUpgradeable_$1081_$", + "typeIdentifier": "t_type$_t_super$_Ownable2StepUpgradeable_$1078_$", "typeString": "type(contract super Ownable2StepUpgradeable)" } }, - "id": 1048, + "id": 1045, "isConstant": false, "isLValue": false, "isPure": false, @@ -870,14 +870,14 @@ "memberLocation": "1916:18:4", "memberName": "_transferOwnership", "nodeType": "MemberAccess", - "referencedDeclaration": 1208, + "referencedDeclaration": 1205, "src": "1910:24:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$__$", "typeString": "function (address)" } }, - "id": 1050, + "id": 1047, "isConstant": false, "isLValue": false, "isPure": false, @@ -893,19 +893,19 @@ "typeString": "tuple()" } }, - "id": 1051, + "id": 1048, "nodeType": "ExpressionStatement", "src": "1910:34:4" } ] }, "documentation": { - "id": 1037, + "id": 1034, "nodeType": "StructuredDocumentation", "src": "1620:173:4", "text": " @dev Transfers ownership of the contract to a new account (`newOwner`) and deletes any pending owner.\n Internal function without access restriction." }, - "id": 1053, + "id": 1050, "implemented": true, "kind": "function", "modifiers": [], @@ -913,23 +913,23 @@ "nameLocation": "1807:18:4", "nodeType": "FunctionDefinition", "overrides": { - "id": 1041, + "id": 1038, "nodeType": "OverrideSpecifier", "overrides": [], "src": "1861:8:4" }, "parameters": { - "id": 1040, + "id": 1037, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1039, + "id": 1036, "mutability": "mutable", "name": "newOwner", "nameLocation": "1834:8:4", "nodeType": "VariableDeclaration", - "scope": 1053, + "scope": 1050, "src": "1826:16:4", "stateVariable": false, "storageLocation": "default", @@ -938,7 +938,7 @@ "typeString": "address" }, "typeName": { - "id": 1038, + "id": 1035, "name": "address", "nodeType": "ElementaryTypeName", "src": "1826:7:4", @@ -954,12 +954,12 @@ "src": "1825:18:4" }, "returnParameters": { - "id": 1042, + "id": 1039, "nodeType": "ParameterList", "parameters": [], "src": "1870:0:4" }, - "scope": 1081, + "scope": 1078, "src": "1798:153:4", "stateMutability": "nonpayable", "virtual": true, @@ -967,23 +967,23 @@ }, { "body": { - "id": 1074, + "id": 1071, "nodeType": "Block", "src": "2073:170:4", "statements": [ { "assignments": [ - 1058 + 1055 ], "declarations": [ { "constant": false, - "id": 1058, + "id": 1055, "mutability": "mutable", "name": "sender", "nameLocation": "2091:6:4", "nodeType": "VariableDeclaration", - "scope": 1074, + "scope": 1071, "src": "2083:14:4", "stateVariable": false, "storageLocation": "default", @@ -992,7 +992,7 @@ "typeString": "address" }, "typeName": { - "id": 1057, + "id": 1054, "name": "address", "nodeType": "ElementaryTypeName", "src": "2083:7:4", @@ -1005,23 +1005,23 @@ "visibility": "internal" } ], - "id": 1061, + "id": 1058, "initialValue": { "arguments": [], "expression": { "argumentTypes": [], - "id": 1059, + "id": 1056, "name": "_msgSender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1869, + "referencedDeclaration": 1866, "src": "2100:10:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", "typeString": "function () view returns (address)" } }, - "id": 1060, + "id": 1057, "isConstant": false, "isLValue": false, "isPure": false, @@ -1048,7 +1048,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 1066, + "id": 1063, "isConstant": false, "isLValue": false, "isPure": false, @@ -1057,18 +1057,18 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 1063, + "id": 1060, "name": "pendingOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1016, + "referencedDeclaration": 1013, "src": "2130:12:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", "typeString": "function () view returns (address)" } }, - "id": 1064, + "id": 1061, "isConstant": false, "isLValue": false, "isPure": false, @@ -1087,11 +1087,11 @@ "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { - "id": 1065, + "id": 1062, "name": "sender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1058, + "referencedDeclaration": 1055, "src": "2148:6:4", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1106,7 +1106,7 @@ }, { "hexValue": "4f776e61626c6532537465703a2063616c6c6572206973206e6f7420746865206e6577206f776e6572", - "id": 1067, + "id": 1064, "isConstant": false, "isLValue": false, "isPure": true, @@ -1132,7 +1132,7 @@ "typeString": "literal_string \"Ownable2Step: caller is not the new owner\"" } ], - "id": 1062, + "id": 1059, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -1146,7 +1146,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 1068, + "id": 1065, "isConstant": false, "isLValue": false, "isPure": false, @@ -1162,7 +1162,7 @@ "typeString": "tuple()" } }, - "id": 1069, + "id": 1066, "nodeType": "ExpressionStatement", "src": "2122:78:4" }, @@ -1170,11 +1170,11 @@ "expression": { "arguments": [ { - "id": 1071, + "id": 1068, "name": "sender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1058, + "referencedDeclaration": 1055, "src": "2229:6:4", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1189,20 +1189,20 @@ "typeString": "address" } ], - "id": 1070, + "id": 1067, "name": "_transferOwnership", "nodeType": "Identifier", "overloadedDeclarations": [ - 1053 + 1050 ], - "referencedDeclaration": 1053, + "referencedDeclaration": 1050, "src": "2210:18:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$__$", "typeString": "function (address)" } }, - "id": 1072, + "id": 1069, "isConstant": false, "isLValue": false, "isPure": false, @@ -1218,20 +1218,20 @@ "typeString": "tuple()" } }, - "id": 1073, + "id": 1070, "nodeType": "ExpressionStatement", "src": "2210:26:4" } ] }, "documentation": { - "id": 1054, + "id": 1051, "nodeType": "StructuredDocumentation", "src": "1957:69:4", "text": " @dev The new owner accepts the ownership transfer." }, "functionSelector": "79ba5097", - "id": 1075, + "id": 1072, "implemented": true, "kind": "function", "modifiers": [], @@ -1239,18 +1239,18 @@ "nameLocation": "2040:15:4", "nodeType": "FunctionDefinition", "parameters": { - "id": 1055, + "id": 1052, "nodeType": "ParameterList", "parameters": [], "src": "2055:2:4" }, "returnParameters": { - "id": 1056, + "id": 1053, "nodeType": "ParameterList", "parameters": [], "src": "2073:0:4" }, - "scope": 1081, + "scope": 1078, "src": "2031:212:4", "stateMutability": "nonpayable", "virtual": true, @@ -1259,17 +1259,17 @@ { "constant": false, "documentation": { - "id": 1076, + "id": 1073, "nodeType": "StructuredDocumentation", "src": "2249:254:4", "text": " @dev This empty reserved space is put in place to allow future versions to add new\n variables without shifting down storage in the inheritance chain.\n See https://docs.openzeppelin.com/contracts/4.x/upgradeable#storage_gaps" }, - "id": 1080, + "id": 1077, "mutability": "mutable", "name": "__gap", "nameLocation": "2528:5:4", "nodeType": "VariableDeclaration", - "scope": 1081, + "scope": 1078, "src": "2508:25:4", "stateVariable": true, "storageLocation": "default", @@ -1279,7 +1279,7 @@ }, "typeName": { "baseType": { - "id": 1077, + "id": 1074, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2508:7:4", @@ -1288,10 +1288,10 @@ "typeString": "uint256" } }, - "id": 1079, + "id": 1076, "length": { "hexValue": "3439", - "id": 1078, + "id": 1075, "isConstant": false, "isLValue": false, "isPure": true, @@ -1315,7 +1315,7 @@ "visibility": "private" } ], - "scope": 1082, + "scope": 1079, "src": "674:1862:4", "usedErrors": [] } @@ -1326,24 +1326,24 @@ "absolutePath": "@openzeppelin/contracts-upgradeable/access/Ownable2StepUpgradeable.sol", "exportedSymbols": { "ContextUpgradeable": [ - 1892 + 1889 ], "Initializable": [ - 1383 + 1380 ], "Ownable2StepUpgradeable": [ - 1081 + 1078 ], "OwnableUpgradeable": [ - 1214 + 1211 ] }, - "id": 1082, + "id": 1079, "license": "MIT", "nodeType": "SourceUnit", "nodes": [ { - "id": 976, + "id": 973, "literals": [ "solidity", "^", @@ -1356,11 +1356,11 @@ { "absolutePath": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol", "file": "./OwnableUpgradeable.sol", - "id": 977, + "id": 974, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", - "scope": 1082, - "sourceUnit": 1215, + "scope": 1079, + "sourceUnit": 1212, "src": "132:34:4", "symbolAliases": [], "unitAlias": "" @@ -1368,20 +1368,20 @@ { "absolutePath": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol", "file": "../proxy/utils/Initializable.sol", - "id": 979, + "id": 976, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", - "scope": 1082, - "sourceUnit": 1384, + "scope": 1079, + "sourceUnit": 1381, "src": "167:63:4", "symbolAliases": [ { "foreign": { - "id": 978, + "id": 975, "name": "Initializable", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1383, + "referencedDeclaration": 1380, "src": "175:13:4", "typeDescriptions": {} }, @@ -1395,31 +1395,31 @@ "baseContracts": [ { "baseName": { - "id": 981, + "id": 978, "name": "Initializable", "nameLocations": [ "719:13:4" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 1383, + "referencedDeclaration": 1380, "src": "719:13:4" }, - "id": 982, + "id": 979, "nodeType": "InheritanceSpecifier", "src": "719:13:4" }, { "baseName": { - "id": 983, + "id": 980, "name": "OwnableUpgradeable", "nameLocations": [ "734:18:4" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 1214, + "referencedDeclaration": 1211, "src": "734:18:4" }, - "id": 984, + "id": 981, "nodeType": "InheritanceSpecifier", "src": "734:18:4" } @@ -1428,18 +1428,18 @@ "contractDependencies": [], "contractKind": "contract", "documentation": { - "id": 980, + "id": 977, "nodeType": "StructuredDocumentation", "src": "232:441:4", "text": " @dev Contract module which provides access control mechanism, where\n there is an account (an owner) that can be granted exclusive access to\n specific functions.\n By default, the owner account will be the one that deploys the contract. This\n can later be changed with {transferOwnership} and {acceptOwnership}.\n This module is used through inheritance. It will make available all functions\n from parent (Ownable)." }, "fullyImplemented": true, - "id": 1081, + "id": 1078, "linearizedBaseContracts": [ - 1081, - 1214, - 1892, - 1383 + 1078, + 1211, + 1889, + 1380 ], "name": "Ownable2StepUpgradeable", "nameLocation": "692:23:4", @@ -1447,12 +1447,12 @@ "nodes": [ { "constant": false, - "id": 986, + "id": 983, "mutability": "mutable", "name": "_pendingOwner", "nameLocation": "775:13:4", "nodeType": "VariableDeclaration", - "scope": 1081, + "scope": 1078, "src": "759:29:4", "stateVariable": true, "storageLocation": "default", @@ -1461,7 +1461,7 @@ "typeString": "address" }, "typeName": { - "id": 985, + "id": 982, "name": "address", "nodeType": "ElementaryTypeName", "src": "759:7:4", @@ -1476,23 +1476,23 @@ { "anonymous": false, "eventSelector": "38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e22700", - "id": 992, + "id": 989, "name": "OwnershipTransferStarted", "nameLocation": "801:24:4", "nodeType": "EventDefinition", "parameters": { - "id": 991, + "id": 988, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 988, + "id": 985, "indexed": true, "mutability": "mutable", "name": "previousOwner", "nameLocation": "842:13:4", "nodeType": "VariableDeclaration", - "scope": 992, + "scope": 989, "src": "826:29:4", "stateVariable": false, "storageLocation": "default", @@ -1501,7 +1501,7 @@ "typeString": "address" }, "typeName": { - "id": 987, + "id": 984, "name": "address", "nodeType": "ElementaryTypeName", "src": "826:7:4", @@ -1515,13 +1515,13 @@ }, { "constant": false, - "id": 990, + "id": 987, "indexed": true, "mutability": "mutable", "name": "newOwner", "nameLocation": "873:8:4", "nodeType": "VariableDeclaration", - "scope": 992, + "scope": 989, "src": "857:24:4", "stateVariable": false, "storageLocation": "default", @@ -1530,7 +1530,7 @@ "typeString": "address" }, "typeName": { - "id": 989, + "id": 986, "name": "address", "nodeType": "ElementaryTypeName", "src": "857:7:4", @@ -1549,7 +1549,7 @@ }, { "body": { - "id": 1000, + "id": 997, "nodeType": "Block", "src": "946:43:4", "statements": [ @@ -1558,18 +1558,18 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 997, + "id": 994, "name": "__Ownable_init_unchained", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1120, + "referencedDeclaration": 1117, "src": "956:24:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", "typeString": "function ()" } }, - "id": 998, + "id": 995, "isConstant": false, "isLValue": false, "isPure": false, @@ -1585,27 +1585,27 @@ "typeString": "tuple()" } }, - "id": 999, + "id": 996, "nodeType": "ExpressionStatement", "src": "956:26:4" } ] }, - "id": 1001, + "id": 998, "implemented": true, "kind": "function", "modifiers": [ { - "id": 995, + "id": 992, "kind": "modifierInvocation", "modifierName": { - "id": 994, + "id": 991, "name": "onlyInitializing", "nameLocations": [ "929:16:4" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 1328, + "referencedDeclaration": 1325, "src": "929:16:4" }, "nodeType": "ModifierInvocation", @@ -1616,18 +1616,18 @@ "nameLocation": "898:19:4", "nodeType": "FunctionDefinition", "parameters": { - "id": 993, + "id": 990, "nodeType": "ParameterList", "parameters": [], "src": "917:2:4" }, "returnParameters": { - "id": 996, + "id": 993, "nodeType": "ParameterList", "parameters": [], "src": "946:0:4" }, - "scope": 1081, + "scope": 1078, "src": "889:100:4", "stateMutability": "nonpayable", "virtual": false, @@ -1635,26 +1635,26 @@ }, { "body": { - "id": 1006, + "id": 1003, "nodeType": "Block", "src": "1062:7:4", "statements": [] }, - "id": 1007, + "id": 1004, "implemented": true, "kind": "function", "modifiers": [ { - "id": 1004, + "id": 1001, "kind": "modifierInvocation", "modifierName": { - "id": 1003, + "id": 1000, "name": "onlyInitializing", "nameLocations": [ "1045:16:4" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 1328, + "referencedDeclaration": 1325, "src": "1045:16:4" }, "nodeType": "ModifierInvocation", @@ -1665,18 +1665,18 @@ "nameLocation": "1004:29:4", "nodeType": "FunctionDefinition", "parameters": { - "id": 1002, + "id": 999, "nodeType": "ParameterList", "parameters": [], "src": "1033:2:4" }, "returnParameters": { - "id": 1005, + "id": 1002, "nodeType": "ParameterList", "parameters": [], "src": "1062:0:4" }, - "scope": 1081, + "scope": 1078, "src": "995:74:4", "stateMutability": "nonpayable", "virtual": false, @@ -1684,38 +1684,38 @@ }, { "body": { - "id": 1015, + "id": 1012, "nodeType": "Block", "src": "1206:37:4", "statements": [ { "expression": { - "id": 1013, + "id": 1010, "name": "_pendingOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 986, + "referencedDeclaration": 983, "src": "1223:13:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "functionReturnParameters": 1012, - "id": 1014, + "functionReturnParameters": 1009, + "id": 1011, "nodeType": "Return", "src": "1216:20:4" } ] }, "documentation": { - "id": 1008, + "id": 1005, "nodeType": "StructuredDocumentation", "src": "1074:65:4", "text": " @dev Returns the address of the pending owner." }, "functionSelector": "e30c3978", - "id": 1016, + "id": 1013, "implemented": true, "kind": "function", "modifiers": [], @@ -1723,23 +1723,23 @@ "nameLocation": "1153:12:4", "nodeType": "FunctionDefinition", "parameters": { - "id": 1009, + "id": 1006, "nodeType": "ParameterList", "parameters": [], "src": "1165:2:4" }, "returnParameters": { - "id": 1012, + "id": 1009, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1011, + "id": 1008, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 1016, + "scope": 1013, "src": "1197:7:4", "stateVariable": false, "storageLocation": "default", @@ -1748,7 +1748,7 @@ "typeString": "address" }, "typeName": { - "id": 1010, + "id": 1007, "name": "address", "nodeType": "ElementaryTypeName", "src": "1197:7:4", @@ -1763,7 +1763,7 @@ ], "src": "1196:9:4" }, - "scope": 1081, + "scope": 1078, "src": "1144:99:4", "stateMutability": "view", "virtual": true, @@ -1771,26 +1771,26 @@ }, { "baseFunctions": [ - 1188 + 1185 ], "body": { - "id": 1035, + "id": 1032, "nodeType": "Block", "src": "1515:99:4", "statements": [ { "expression": { - "id": 1027, + "id": 1024, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 1025, + "id": 1022, "name": "_pendingOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 986, + "referencedDeclaration": 983, "src": "1525:13:4", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1800,11 +1800,11 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 1026, + "id": 1023, "name": "newOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1019, + "referencedDeclaration": 1016, "src": "1541:8:4", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1817,7 +1817,7 @@ "typeString": "address" } }, - "id": 1028, + "id": 1025, "nodeType": "ExpressionStatement", "src": "1525:24:4" }, @@ -1828,18 +1828,18 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 1030, + "id": 1027, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1137, + "referencedDeclaration": 1134, "src": "1589:5:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", "typeString": "function () view returns (address)" } }, - "id": 1031, + "id": 1028, "isConstant": false, "isLValue": false, "isPure": false, @@ -1856,11 +1856,11 @@ } }, { - "id": 1032, + "id": 1029, "name": "newOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1019, + "referencedDeclaration": 1016, "src": "1598:8:4", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1879,18 +1879,18 @@ "typeString": "address" } ], - "id": 1029, + "id": 1026, "name": "OwnershipTransferStarted", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 992, + "referencedDeclaration": 989, "src": "1564:24:4", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$returns$__$", "typeString": "function (address,address)" } }, - "id": 1033, + "id": 1030, "isConstant": false, "isLValue": false, "isPure": false, @@ -1906,34 +1906,34 @@ "typeString": "tuple()" } }, - "id": 1034, + "id": 1031, "nodeType": "EmitStatement", "src": "1559:48:4" } ] }, "documentation": { - "id": 1017, + "id": 1014, "nodeType": "StructuredDocumentation", "src": "1249:182:4", "text": " @dev Starts the ownership transfer of the contract to a new account. Replaces the pending transfer if there is one.\n Can only be called by the current owner." }, "functionSelector": "f2fde38b", - "id": 1036, + "id": 1033, "implemented": true, "kind": "function", "modifiers": [ { - "id": 1023, + "id": 1020, "kind": "modifierInvocation", "modifierName": { - "id": 1022, + "id": 1019, "name": "onlyOwner", "nameLocations": [ "1505:9:4" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 1128, + "referencedDeclaration": 1125, "src": "1505:9:4" }, "nodeType": "ModifierInvocation", @@ -1944,23 +1944,23 @@ "nameLocation": "1445:17:4", "nodeType": "FunctionDefinition", "overrides": { - "id": 1021, + "id": 1018, "nodeType": "OverrideSpecifier", "overrides": [], "src": "1496:8:4" }, "parameters": { - "id": 1020, + "id": 1017, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1019, + "id": 1016, "mutability": "mutable", "name": "newOwner", "nameLocation": "1471:8:4", "nodeType": "VariableDeclaration", - "scope": 1036, + "scope": 1033, "src": "1463:16:4", "stateVariable": false, "storageLocation": "default", @@ -1969,7 +1969,7 @@ "typeString": "address" }, "typeName": { - "id": 1018, + "id": 1015, "name": "address", "nodeType": "ElementaryTypeName", "src": "1463:7:4", @@ -1985,12 +1985,12 @@ "src": "1462:18:4" }, "returnParameters": { - "id": 1024, + "id": 1021, "nodeType": "ParameterList", "parameters": [], "src": "1515:0:4" }, - "scope": 1081, + "scope": 1078, "src": "1436:178:4", "stateMutability": "nonpayable", "virtual": true, @@ -1998,16 +1998,16 @@ }, { "baseFunctions": [ - 1208 + 1205 ], "body": { - "id": 1052, + "id": 1049, "nodeType": "Block", "src": "1870:81:4", "statements": [ { "expression": { - "id": 1044, + "id": 1041, "isConstant": false, "isLValue": false, "isPure": false, @@ -2017,11 +2017,11 @@ "prefix": true, "src": "1880:20:4", "subExpression": { - "id": 1043, + "id": 1040, "name": "_pendingOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 986, + "referencedDeclaration": 983, "src": "1887:13:4", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2033,7 +2033,7 @@ "typeString": "tuple()" } }, - "id": 1045, + "id": 1042, "nodeType": "ExpressionStatement", "src": "1880:20:4" }, @@ -2041,11 +2041,11 @@ "expression": { "arguments": [ { - "id": 1049, + "id": 1046, "name": "newOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1039, + "referencedDeclaration": 1036, "src": "1935:8:4", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2061,18 +2061,18 @@ } ], "expression": { - "id": 1046, + "id": 1043, "name": "super", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967271, "src": "1910:5:4", "typeDescriptions": { - "typeIdentifier": "t_type$_t_super$_Ownable2StepUpgradeable_$1081_$", + "typeIdentifier": "t_type$_t_super$_Ownable2StepUpgradeable_$1078_$", "typeString": "type(contract super Ownable2StepUpgradeable)" } }, - "id": 1048, + "id": 1045, "isConstant": false, "isLValue": false, "isPure": false, @@ -2080,14 +2080,14 @@ "memberLocation": "1916:18:4", "memberName": "_transferOwnership", "nodeType": "MemberAccess", - "referencedDeclaration": 1208, + "referencedDeclaration": 1205, "src": "1910:24:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$__$", "typeString": "function (address)" } }, - "id": 1050, + "id": 1047, "isConstant": false, "isLValue": false, "isPure": false, @@ -2103,19 +2103,19 @@ "typeString": "tuple()" } }, - "id": 1051, + "id": 1048, "nodeType": "ExpressionStatement", "src": "1910:34:4" } ] }, "documentation": { - "id": 1037, + "id": 1034, "nodeType": "StructuredDocumentation", "src": "1620:173:4", "text": " @dev Transfers ownership of the contract to a new account (`newOwner`) and deletes any pending owner.\n Internal function without access restriction." }, - "id": 1053, + "id": 1050, "implemented": true, "kind": "function", "modifiers": [], @@ -2123,23 +2123,23 @@ "nameLocation": "1807:18:4", "nodeType": "FunctionDefinition", "overrides": { - "id": 1041, + "id": 1038, "nodeType": "OverrideSpecifier", "overrides": [], "src": "1861:8:4" }, "parameters": { - "id": 1040, + "id": 1037, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1039, + "id": 1036, "mutability": "mutable", "name": "newOwner", "nameLocation": "1834:8:4", "nodeType": "VariableDeclaration", - "scope": 1053, + "scope": 1050, "src": "1826:16:4", "stateVariable": false, "storageLocation": "default", @@ -2148,7 +2148,7 @@ "typeString": "address" }, "typeName": { - "id": 1038, + "id": 1035, "name": "address", "nodeType": "ElementaryTypeName", "src": "1826:7:4", @@ -2164,12 +2164,12 @@ "src": "1825:18:4" }, "returnParameters": { - "id": 1042, + "id": 1039, "nodeType": "ParameterList", "parameters": [], "src": "1870:0:4" }, - "scope": 1081, + "scope": 1078, "src": "1798:153:4", "stateMutability": "nonpayable", "virtual": true, @@ -2177,23 +2177,23 @@ }, { "body": { - "id": 1074, + "id": 1071, "nodeType": "Block", "src": "2073:170:4", "statements": [ { "assignments": [ - 1058 + 1055 ], "declarations": [ { "constant": false, - "id": 1058, + "id": 1055, "mutability": "mutable", "name": "sender", "nameLocation": "2091:6:4", "nodeType": "VariableDeclaration", - "scope": 1074, + "scope": 1071, "src": "2083:14:4", "stateVariable": false, "storageLocation": "default", @@ -2202,7 +2202,7 @@ "typeString": "address" }, "typeName": { - "id": 1057, + "id": 1054, "name": "address", "nodeType": "ElementaryTypeName", "src": "2083:7:4", @@ -2215,23 +2215,23 @@ "visibility": "internal" } ], - "id": 1061, + "id": 1058, "initialValue": { "arguments": [], "expression": { "argumentTypes": [], - "id": 1059, + "id": 1056, "name": "_msgSender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1869, + "referencedDeclaration": 1866, "src": "2100:10:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", "typeString": "function () view returns (address)" } }, - "id": 1060, + "id": 1057, "isConstant": false, "isLValue": false, "isPure": false, @@ -2258,7 +2258,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 1066, + "id": 1063, "isConstant": false, "isLValue": false, "isPure": false, @@ -2267,18 +2267,18 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 1063, + "id": 1060, "name": "pendingOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1016, + "referencedDeclaration": 1013, "src": "2130:12:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", "typeString": "function () view returns (address)" } }, - "id": 1064, + "id": 1061, "isConstant": false, "isLValue": false, "isPure": false, @@ -2297,11 +2297,11 @@ "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { - "id": 1065, + "id": 1062, "name": "sender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1058, + "referencedDeclaration": 1055, "src": "2148:6:4", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2316,7 +2316,7 @@ }, { "hexValue": "4f776e61626c6532537465703a2063616c6c6572206973206e6f7420746865206e6577206f776e6572", - "id": 1067, + "id": 1064, "isConstant": false, "isLValue": false, "isPure": true, @@ -2342,7 +2342,7 @@ "typeString": "literal_string \"Ownable2Step: caller is not the new owner\"" } ], - "id": 1062, + "id": 1059, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -2356,7 +2356,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 1068, + "id": 1065, "isConstant": false, "isLValue": false, "isPure": false, @@ -2372,7 +2372,7 @@ "typeString": "tuple()" } }, - "id": 1069, + "id": 1066, "nodeType": "ExpressionStatement", "src": "2122:78:4" }, @@ -2380,11 +2380,11 @@ "expression": { "arguments": [ { - "id": 1071, + "id": 1068, "name": "sender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1058, + "referencedDeclaration": 1055, "src": "2229:6:4", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2399,20 +2399,20 @@ "typeString": "address" } ], - "id": 1070, + "id": 1067, "name": "_transferOwnership", "nodeType": "Identifier", "overloadedDeclarations": [ - 1053 + 1050 ], - "referencedDeclaration": 1053, + "referencedDeclaration": 1050, "src": "2210:18:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$__$", "typeString": "function (address)" } }, - "id": 1072, + "id": 1069, "isConstant": false, "isLValue": false, "isPure": false, @@ -2428,20 +2428,20 @@ "typeString": "tuple()" } }, - "id": 1073, + "id": 1070, "nodeType": "ExpressionStatement", "src": "2210:26:4" } ] }, "documentation": { - "id": 1054, + "id": 1051, "nodeType": "StructuredDocumentation", "src": "1957:69:4", "text": " @dev The new owner accepts the ownership transfer." }, "functionSelector": "79ba5097", - "id": 1075, + "id": 1072, "implemented": true, "kind": "function", "modifiers": [], @@ -2449,18 +2449,18 @@ "nameLocation": "2040:15:4", "nodeType": "FunctionDefinition", "parameters": { - "id": 1055, + "id": 1052, "nodeType": "ParameterList", "parameters": [], "src": "2055:2:4" }, "returnParameters": { - "id": 1056, + "id": 1053, "nodeType": "ParameterList", "parameters": [], "src": "2073:0:4" }, - "scope": 1081, + "scope": 1078, "src": "2031:212:4", "stateMutability": "nonpayable", "virtual": true, @@ -2469,17 +2469,17 @@ { "constant": false, "documentation": { - "id": 1076, + "id": 1073, "nodeType": "StructuredDocumentation", "src": "2249:254:4", "text": " @dev This empty reserved space is put in place to allow future versions to add new\n variables without shifting down storage in the inheritance chain.\n See https://docs.openzeppelin.com/contracts/4.x/upgradeable#storage_gaps" }, - "id": 1080, + "id": 1077, "mutability": "mutable", "name": "__gap", "nameLocation": "2528:5:4", "nodeType": "VariableDeclaration", - "scope": 1081, + "scope": 1078, "src": "2508:25:4", "stateVariable": true, "storageLocation": "default", @@ -2489,7 +2489,7 @@ }, "typeName": { "baseType": { - "id": 1077, + "id": 1074, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2508:7:4", @@ -2498,10 +2498,10 @@ "typeString": "uint256" } }, - "id": 1079, + "id": 1076, "length": { "hexValue": "3439", - "id": 1078, + "id": 1075, "isConstant": false, "isLValue": false, "isPure": true, @@ -2525,7 +2525,7 @@ "visibility": "private" } ], - "scope": 1082, + "scope": 1079, "src": "674:1862:4", "usedErrors": [] } @@ -2538,5 +2538,5 @@ }, "networks": {}, "schemaVersion": "2.0.1", - "updatedAt": "2024-06-20T09:33:52.550Z" + "updatedAt": "2024-06-27T12:24:25.257Z" } \ No newline at end of file diff --git a/build/contracts/OwnableUpgradeable.json b/build/contracts/OwnableUpgradeable.json index 34f3a83..433e7f5 100644 --- a/build/contracts/OwnableUpgradeable.json +++ b/build/contracts/OwnableUpgradeable.json @@ -77,21 +77,21 @@ "absolutePath": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol", "exportedSymbols": { "ContextUpgradeable": [ - 1892 + 1889 ], "Initializable": [ - 1383 + 1380 ], "OwnableUpgradeable": [ - 1214 + 1211 ] }, - "id": 1215, + "id": 1212, "license": "MIT", "nodeType": "SourceUnit", "nodes": [ { - "id": 1083, + "id": 1080, "literals": [ "solidity", "^", @@ -104,11 +104,11 @@ { "absolutePath": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol", "file": "../utils/ContextUpgradeable.sol", - "id": 1084, + "id": 1081, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", - "scope": 1215, - "sourceUnit": 1893, + "scope": 1212, + "sourceUnit": 1890, "src": "127:41:5", "symbolAliases": [], "unitAlias": "" @@ -116,20 +116,20 @@ { "absolutePath": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol", "file": "../proxy/utils/Initializable.sol", - "id": 1086, + "id": 1083, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", - "scope": 1215, - "sourceUnit": 1384, + "scope": 1212, + "sourceUnit": 1381, "src": "169:63:5", "symbolAliases": [ { "foreign": { - "id": 1085, + "id": 1082, "name": "Initializable", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1383, + "referencedDeclaration": 1380, "src": "177:13:5", "typeDescriptions": {} }, @@ -143,31 +143,31 @@ "baseContracts": [ { "baseName": { - "id": 1088, + "id": 1085, "name": "Initializable", "nameLocations": [ "769:13:5" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 1383, + "referencedDeclaration": 1380, "src": "769:13:5" }, - "id": 1089, + "id": 1086, "nodeType": "InheritanceSpecifier", "src": "769:13:5" }, { "baseName": { - "id": 1090, + "id": 1087, "name": "ContextUpgradeable", "nameLocations": [ "784:18:5" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 1892, + "referencedDeclaration": 1889, "src": "784:18:5" }, - "id": 1091, + "id": 1088, "nodeType": "InheritanceSpecifier", "src": "784:18:5" } @@ -176,17 +176,17 @@ "contractDependencies": [], "contractKind": "contract", "documentation": { - "id": 1087, + "id": 1084, "nodeType": "StructuredDocumentation", "src": "234:494:5", "text": " @dev Contract module which provides a basic access control mechanism, where\n there is an account (an owner) that can be granted exclusive access to\n specific functions.\n By default, the owner account will be the one that deploys the contract. This\n can later be changed with {transferOwnership}.\n This module is used through inheritance. It will make available the modifier\n `onlyOwner`, which can be applied to your functions to restrict their use to\n the owner." }, "fullyImplemented": true, - "id": 1214, + "id": 1211, "linearizedBaseContracts": [ - 1214, - 1892, - 1383 + 1211, + 1889, + 1380 ], "name": "OwnableUpgradeable", "nameLocation": "747:18:5", @@ -194,12 +194,12 @@ "nodes": [ { "constant": false, - "id": 1093, + "id": 1090, "mutability": "mutable", "name": "_owner", "nameLocation": "825:6:5", "nodeType": "VariableDeclaration", - "scope": 1214, + "scope": 1211, "src": "809:22:5", "stateVariable": true, "storageLocation": "default", @@ -208,7 +208,7 @@ "typeString": "address" }, "typeName": { - "id": 1092, + "id": 1089, "name": "address", "nodeType": "ElementaryTypeName", "src": "809:7:5", @@ -223,23 +223,23 @@ { "anonymous": false, "eventSelector": "8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0", - "id": 1099, + "id": 1096, "name": "OwnershipTransferred", "nameLocation": "844:20:5", "nodeType": "EventDefinition", "parameters": { - "id": 1098, + "id": 1095, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1095, + "id": 1092, "indexed": true, "mutability": "mutable", "name": "previousOwner", "nameLocation": "881:13:5", "nodeType": "VariableDeclaration", - "scope": 1099, + "scope": 1096, "src": "865:29:5", "stateVariable": false, "storageLocation": "default", @@ -248,7 +248,7 @@ "typeString": "address" }, "typeName": { - "id": 1094, + "id": 1091, "name": "address", "nodeType": "ElementaryTypeName", "src": "865:7:5", @@ -262,13 +262,13 @@ }, { "constant": false, - "id": 1097, + "id": 1094, "indexed": true, "mutability": "mutable", "name": "newOwner", "nameLocation": "912:8:5", "nodeType": "VariableDeclaration", - "scope": 1099, + "scope": 1096, "src": "896:24:5", "stateVariable": false, "storageLocation": "default", @@ -277,7 +277,7 @@ "typeString": "address" }, "typeName": { - "id": 1096, + "id": 1093, "name": "address", "nodeType": "ElementaryTypeName", "src": "896:7:5", @@ -296,7 +296,7 @@ }, { "body": { - "id": 1108, + "id": 1105, "nodeType": "Block", "src": "1076:43:5", "statements": [ @@ -305,18 +305,18 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 1105, + "id": 1102, "name": "__Ownable_init_unchained", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1120, + "referencedDeclaration": 1117, "src": "1086:24:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", "typeString": "function ()" } }, - "id": 1106, + "id": 1103, "isConstant": false, "isLValue": false, "isPure": false, @@ -332,33 +332,33 @@ "typeString": "tuple()" } }, - "id": 1107, + "id": 1104, "nodeType": "ExpressionStatement", "src": "1086:26:5" } ] }, "documentation": { - "id": 1100, + "id": 1097, "nodeType": "StructuredDocumentation", "src": "928:91:5", "text": " @dev Initializes the contract setting the deployer as the initial owner." }, - "id": 1109, + "id": 1106, "implemented": true, "kind": "function", "modifiers": [ { - "id": 1103, + "id": 1100, "kind": "modifierInvocation", "modifierName": { - "id": 1102, + "id": 1099, "name": "onlyInitializing", "nameLocations": [ "1059:16:5" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 1328, + "referencedDeclaration": 1325, "src": "1059:16:5" }, "nodeType": "ModifierInvocation", @@ -369,18 +369,18 @@ "nameLocation": "1033:14:5", "nodeType": "FunctionDefinition", "parameters": { - "id": 1101, + "id": 1098, "nodeType": "ParameterList", "parameters": [], "src": "1047:2:5" }, "returnParameters": { - "id": 1104, + "id": 1101, "nodeType": "ParameterList", "parameters": [], "src": "1076:0:5" }, - "scope": 1214, + "scope": 1211, "src": "1024:95:5", "stateMutability": "nonpayable", "virtual": false, @@ -388,7 +388,7 @@ }, { "body": { - "id": 1119, + "id": 1116, "nodeType": "Block", "src": "1187:49:5", "statements": [ @@ -399,18 +399,18 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 1115, + "id": 1112, "name": "_msgSender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1869, + "referencedDeclaration": 1866, "src": "1216:10:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", "typeString": "function () view returns (address)" } }, - "id": 1116, + "id": 1113, "isConstant": false, "isLValue": false, "isPure": false, @@ -434,18 +434,18 @@ "typeString": "address" } ], - "id": 1114, + "id": 1111, "name": "_transferOwnership", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1208, + "referencedDeclaration": 1205, "src": "1197:18:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$__$", "typeString": "function (address)" } }, - "id": 1117, + "id": 1114, "isConstant": false, "isLValue": false, "isPure": false, @@ -461,27 +461,27 @@ "typeString": "tuple()" } }, - "id": 1118, + "id": 1115, "nodeType": "ExpressionStatement", "src": "1197:32:5" } ] }, - "id": 1120, + "id": 1117, "implemented": true, "kind": "function", "modifiers": [ { - "id": 1112, + "id": 1109, "kind": "modifierInvocation", "modifierName": { - "id": 1111, + "id": 1108, "name": "onlyInitializing", "nameLocations": [ "1170:16:5" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 1328, + "referencedDeclaration": 1325, "src": "1170:16:5" }, "nodeType": "ModifierInvocation", @@ -492,18 +492,18 @@ "nameLocation": "1134:24:5", "nodeType": "FunctionDefinition", "parameters": { - "id": 1110, + "id": 1107, "nodeType": "ParameterList", "parameters": [], "src": "1158:2:5" }, "returnParameters": { - "id": 1113, + "id": 1110, "nodeType": "ParameterList", "parameters": [], "src": "1187:0:5" }, - "scope": 1214, + "scope": 1211, "src": "1125:111:5", "stateMutability": "nonpayable", "virtual": false, @@ -511,7 +511,7 @@ }, { "body": { - "id": 1127, + "id": 1124, "nodeType": "Block", "src": "1345:41:5", "statements": [ @@ -520,18 +520,18 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 1123, + "id": 1120, "name": "_checkOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1151, + "referencedDeclaration": 1148, "src": "1355:11:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$__$", "typeString": "function () view" } }, - "id": 1124, + "id": 1121, "isConstant": false, "isLValue": false, "isPure": false, @@ -547,29 +547,29 @@ "typeString": "tuple()" } }, - "id": 1125, + "id": 1122, "nodeType": "ExpressionStatement", "src": "1355:13:5" }, { - "id": 1126, + "id": 1123, "nodeType": "PlaceholderStatement", "src": "1378:1:5" } ] }, "documentation": { - "id": 1121, + "id": 1118, "nodeType": "StructuredDocumentation", "src": "1242:77:5", "text": " @dev Throws if called by any account other than the owner." }, - "id": 1128, + "id": 1125, "name": "onlyOwner", "nameLocation": "1333:9:5", "nodeType": "ModifierDefinition", "parameters": { - "id": 1122, + "id": 1119, "nodeType": "ParameterList", "parameters": [], "src": "1342:2:5" @@ -580,38 +580,38 @@ }, { "body": { - "id": 1136, + "id": 1133, "nodeType": "Block", "src": "1517:30:5", "statements": [ { "expression": { - "id": 1134, + "id": 1131, "name": "_owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1093, + "referencedDeclaration": 1090, "src": "1534:6:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "functionReturnParameters": 1133, - "id": 1135, + "functionReturnParameters": 1130, + "id": 1132, "nodeType": "Return", "src": "1527:13:5" } ] }, "documentation": { - "id": 1129, + "id": 1126, "nodeType": "StructuredDocumentation", "src": "1392:65:5", "text": " @dev Returns the address of the current owner." }, "functionSelector": "8da5cb5b", - "id": 1137, + "id": 1134, "implemented": true, "kind": "function", "modifiers": [], @@ -619,23 +619,23 @@ "nameLocation": "1471:5:5", "nodeType": "FunctionDefinition", "parameters": { - "id": 1130, + "id": 1127, "nodeType": "ParameterList", "parameters": [], "src": "1476:2:5" }, "returnParameters": { - "id": 1133, + "id": 1130, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1132, + "id": 1129, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 1137, + "scope": 1134, "src": "1508:7:5", "stateVariable": false, "storageLocation": "default", @@ -644,7 +644,7 @@ "typeString": "address" }, "typeName": { - "id": 1131, + "id": 1128, "name": "address", "nodeType": "ElementaryTypeName", "src": "1508:7:5", @@ -659,7 +659,7 @@ ], "src": "1507:9:5" }, - "scope": 1214, + "scope": 1211, "src": "1462:85:5", "stateMutability": "view", "virtual": true, @@ -667,7 +667,7 @@ }, { "body": { - "id": 1150, + "id": 1147, "nodeType": "Block", "src": "1665:85:5", "statements": [ @@ -679,7 +679,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 1146, + "id": 1143, "isConstant": false, "isLValue": false, "isPure": false, @@ -688,18 +688,18 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 1142, + "id": 1139, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1137, + "referencedDeclaration": 1134, "src": "1683:5:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", "typeString": "function () view returns (address)" } }, - "id": 1143, + "id": 1140, "isConstant": false, "isLValue": false, "isPure": false, @@ -721,18 +721,18 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 1144, + "id": 1141, "name": "_msgSender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1869, + "referencedDeclaration": 1866, "src": "1694:10:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", "typeString": "function () view returns (address)" } }, - "id": 1145, + "id": 1142, "isConstant": false, "isLValue": false, "isPure": false, @@ -756,7 +756,7 @@ }, { "hexValue": "4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572", - "id": 1147, + "id": 1144, "isConstant": false, "isLValue": false, "isPure": true, @@ -782,7 +782,7 @@ "typeString": "literal_string \"Ownable: caller is not the owner\"" } ], - "id": 1141, + "id": 1138, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -796,7 +796,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 1148, + "id": 1145, "isConstant": false, "isLValue": false, "isPure": false, @@ -812,19 +812,19 @@ "typeString": "tuple()" } }, - "id": 1149, + "id": 1146, "nodeType": "ExpressionStatement", "src": "1675:68:5" } ] }, "documentation": { - "id": 1138, + "id": 1135, "nodeType": "StructuredDocumentation", "src": "1553:62:5", "text": " @dev Throws if the sender is not the owner." }, - "id": 1151, + "id": 1148, "implemented": true, "kind": "function", "modifiers": [], @@ -832,18 +832,18 @@ "nameLocation": "1629:11:5", "nodeType": "FunctionDefinition", "parameters": { - "id": 1139, + "id": 1136, "nodeType": "ParameterList", "parameters": [], "src": "1640:2:5" }, "returnParameters": { - "id": 1140, + "id": 1137, "nodeType": "ParameterList", "parameters": [], "src": "1665:0:5" }, - "scope": 1214, + "scope": 1211, "src": "1620:130:5", "stateMutability": "view", "virtual": true, @@ -851,7 +851,7 @@ }, { "body": { - "id": 1164, + "id": 1161, "nodeType": "Block", "src": "2139:47:5", "statements": [ @@ -862,7 +862,7 @@ "arguments": [ { "hexValue": "30", - "id": 1160, + "id": 1157, "isConstant": false, "isLValue": false, "isPure": true, @@ -884,7 +884,7 @@ "typeString": "int_const 0" } ], - "id": 1159, + "id": 1156, "isConstant": false, "isLValue": false, "isPure": true, @@ -896,14 +896,14 @@ "typeString": "type(address)" }, "typeName": { - "id": 1158, + "id": 1155, "name": "address", "nodeType": "ElementaryTypeName", "src": "2168:7:5", "typeDescriptions": {} } }, - "id": 1161, + "id": 1158, "isConstant": false, "isLValue": false, "isPure": true, @@ -927,18 +927,18 @@ "typeString": "address" } ], - "id": 1157, + "id": 1154, "name": "_transferOwnership", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1208, + "referencedDeclaration": 1205, "src": "2149:18:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$__$", "typeString": "function (address)" } }, - "id": 1162, + "id": 1159, "isConstant": false, "isLValue": false, "isPure": false, @@ -954,34 +954,34 @@ "typeString": "tuple()" } }, - "id": 1163, + "id": 1160, "nodeType": "ExpressionStatement", "src": "2149:30:5" } ] }, "documentation": { - "id": 1152, + "id": 1149, "nodeType": "StructuredDocumentation", "src": "1756:324:5", "text": " @dev Leaves the contract without owner. It will not be possible to call\n `onlyOwner` functions. Can only be called by the current owner.\n NOTE: Renouncing ownership will leave the contract without an owner,\n thereby disabling any functionality that is only available to the owner." }, "functionSelector": "715018a6", - "id": 1165, + "id": 1162, "implemented": true, "kind": "function", "modifiers": [ { - "id": 1155, + "id": 1152, "kind": "modifierInvocation", "modifierName": { - "id": 1154, + "id": 1151, "name": "onlyOwner", "nameLocations": [ "2129:9:5" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 1128, + "referencedDeclaration": 1125, "src": "2129:9:5" }, "nodeType": "ModifierInvocation", @@ -992,18 +992,18 @@ "nameLocation": "2094:17:5", "nodeType": "FunctionDefinition", "parameters": { - "id": 1153, + "id": 1150, "nodeType": "ParameterList", "parameters": [], "src": "2111:2:5" }, "returnParameters": { - "id": 1156, + "id": 1153, "nodeType": "ParameterList", "parameters": [], "src": "2139:0:5" }, - "scope": 1214, + "scope": 1211, "src": "2085:101:5", "stateMutability": "nonpayable", "virtual": true, @@ -1011,7 +1011,7 @@ }, { "body": { - "id": 1187, + "id": 1184, "nodeType": "Block", "src": "2405:128:5", "statements": [ @@ -1023,17 +1023,17 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 1179, + "id": 1176, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 1174, + "id": 1171, "name": "newOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1168, + "referencedDeclaration": 1165, "src": "2423:8:5", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1046,7 +1046,7 @@ "arguments": [ { "hexValue": "30", - "id": 1177, + "id": 1174, "isConstant": false, "isLValue": false, "isPure": true, @@ -1068,7 +1068,7 @@ "typeString": "int_const 0" } ], - "id": 1176, + "id": 1173, "isConstant": false, "isLValue": false, "isPure": true, @@ -1080,14 +1080,14 @@ "typeString": "type(address)" }, "typeName": { - "id": 1175, + "id": 1172, "name": "address", "nodeType": "ElementaryTypeName", "src": "2435:7:5", "typeDescriptions": {} } }, - "id": 1178, + "id": 1175, "isConstant": false, "isLValue": false, "isPure": true, @@ -1111,7 +1111,7 @@ }, { "hexValue": "4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061646472657373", - "id": 1180, + "id": 1177, "isConstant": false, "isLValue": false, "isPure": true, @@ -1137,7 +1137,7 @@ "typeString": "literal_string \"Ownable: new owner is the zero address\"" } ], - "id": 1173, + "id": 1170, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -1151,7 +1151,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 1181, + "id": 1178, "isConstant": false, "isLValue": false, "isPure": false, @@ -1167,7 +1167,7 @@ "typeString": "tuple()" } }, - "id": 1182, + "id": 1179, "nodeType": "ExpressionStatement", "src": "2415:73:5" }, @@ -1175,11 +1175,11 @@ "expression": { "arguments": [ { - "id": 1184, + "id": 1181, "name": "newOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1168, + "referencedDeclaration": 1165, "src": "2517:8:5", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1194,18 +1194,18 @@ "typeString": "address" } ], - "id": 1183, + "id": 1180, "name": "_transferOwnership", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1208, + "referencedDeclaration": 1205, "src": "2498:18:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$__$", "typeString": "function (address)" } }, - "id": 1185, + "id": 1182, "isConstant": false, "isLValue": false, "isPure": false, @@ -1221,34 +1221,34 @@ "typeString": "tuple()" } }, - "id": 1186, + "id": 1183, "nodeType": "ExpressionStatement", "src": "2498:28:5" } ] }, "documentation": { - "id": 1166, + "id": 1163, "nodeType": "StructuredDocumentation", "src": "2192:138:5", "text": " @dev Transfers ownership of the contract to a new account (`newOwner`).\n Can only be called by the current owner." }, "functionSelector": "f2fde38b", - "id": 1188, + "id": 1185, "implemented": true, "kind": "function", "modifiers": [ { - "id": 1171, + "id": 1168, "kind": "modifierInvocation", "modifierName": { - "id": 1170, + "id": 1167, "name": "onlyOwner", "nameLocations": [ "2395:9:5" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 1128, + "referencedDeclaration": 1125, "src": "2395:9:5" }, "nodeType": "ModifierInvocation", @@ -1259,17 +1259,17 @@ "nameLocation": "2344:17:5", "nodeType": "FunctionDefinition", "parameters": { - "id": 1169, + "id": 1166, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1168, + "id": 1165, "mutability": "mutable", "name": "newOwner", "nameLocation": "2370:8:5", "nodeType": "VariableDeclaration", - "scope": 1188, + "scope": 1185, "src": "2362:16:5", "stateVariable": false, "storageLocation": "default", @@ -1278,7 +1278,7 @@ "typeString": "address" }, "typeName": { - "id": 1167, + "id": 1164, "name": "address", "nodeType": "ElementaryTypeName", "src": "2362:7:5", @@ -1294,12 +1294,12 @@ "src": "2361:18:5" }, "returnParameters": { - "id": 1172, + "id": 1169, "nodeType": "ParameterList", "parameters": [], "src": "2405:0:5" }, - "scope": 1214, + "scope": 1211, "src": "2335:198:5", "stateMutability": "nonpayable", "virtual": true, @@ -1307,23 +1307,23 @@ }, { "body": { - "id": 1207, + "id": 1204, "nodeType": "Block", "src": "2750:124:5", "statements": [ { "assignments": [ - 1195 + 1192 ], "declarations": [ { "constant": false, - "id": 1195, + "id": 1192, "mutability": "mutable", "name": "oldOwner", "nameLocation": "2768:8:5", "nodeType": "VariableDeclaration", - "scope": 1207, + "scope": 1204, "src": "2760:16:5", "stateVariable": false, "storageLocation": "default", @@ -1332,7 +1332,7 @@ "typeString": "address" }, "typeName": { - "id": 1194, + "id": 1191, "name": "address", "nodeType": "ElementaryTypeName", "src": "2760:7:5", @@ -1345,13 +1345,13 @@ "visibility": "internal" } ], - "id": 1197, + "id": 1194, "initialValue": { - "id": 1196, + "id": 1193, "name": "_owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1093, + "referencedDeclaration": 1090, "src": "2779:6:5", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1363,17 +1363,17 @@ }, { "expression": { - "id": 1200, + "id": 1197, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 1198, + "id": 1195, "name": "_owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1093, + "referencedDeclaration": 1090, "src": "2795:6:5", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1383,11 +1383,11 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 1199, + "id": 1196, "name": "newOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1191, + "referencedDeclaration": 1188, "src": "2804:8:5", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1400,7 +1400,7 @@ "typeString": "address" } }, - "id": 1201, + "id": 1198, "nodeType": "ExpressionStatement", "src": "2795:17:5" }, @@ -1408,11 +1408,11 @@ "eventCall": { "arguments": [ { - "id": 1203, + "id": 1200, "name": "oldOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1195, + "referencedDeclaration": 1192, "src": "2848:8:5", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1420,11 +1420,11 @@ } }, { - "id": 1204, + "id": 1201, "name": "newOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1191, + "referencedDeclaration": 1188, "src": "2858:8:5", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1443,18 +1443,18 @@ "typeString": "address" } ], - "id": 1202, + "id": 1199, "name": "OwnershipTransferred", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1099, + "referencedDeclaration": 1096, "src": "2827:20:5", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$returns$__$", "typeString": "function (address,address)" } }, - "id": 1205, + "id": 1202, "isConstant": false, "isLValue": false, "isPure": false, @@ -1470,19 +1470,19 @@ "typeString": "tuple()" } }, - "id": 1206, + "id": 1203, "nodeType": "EmitStatement", "src": "2822:45:5" } ] }, "documentation": { - "id": 1189, + "id": 1186, "nodeType": "StructuredDocumentation", "src": "2539:143:5", "text": " @dev Transfers ownership of the contract to a new account (`newOwner`).\n Internal function without access restriction." }, - "id": 1208, + "id": 1205, "implemented": true, "kind": "function", "modifiers": [], @@ -1490,17 +1490,17 @@ "nameLocation": "2696:18:5", "nodeType": "FunctionDefinition", "parameters": { - "id": 1192, + "id": 1189, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1191, + "id": 1188, "mutability": "mutable", "name": "newOwner", "nameLocation": "2723:8:5", "nodeType": "VariableDeclaration", - "scope": 1208, + "scope": 1205, "src": "2715:16:5", "stateVariable": false, "storageLocation": "default", @@ -1509,7 +1509,7 @@ "typeString": "address" }, "typeName": { - "id": 1190, + "id": 1187, "name": "address", "nodeType": "ElementaryTypeName", "src": "2715:7:5", @@ -1525,12 +1525,12 @@ "src": "2714:18:5" }, "returnParameters": { - "id": 1193, + "id": 1190, "nodeType": "ParameterList", "parameters": [], "src": "2750:0:5" }, - "scope": 1214, + "scope": 1211, "src": "2687:187:5", "stateMutability": "nonpayable", "virtual": true, @@ -1539,17 +1539,17 @@ { "constant": false, "documentation": { - "id": 1209, + "id": 1206, "nodeType": "StructuredDocumentation", "src": "2880:254:5", "text": " @dev This empty reserved space is put in place to allow future versions to add new\n variables without shifting down storage in the inheritance chain.\n See https://docs.openzeppelin.com/contracts/4.x/upgradeable#storage_gaps" }, - "id": 1213, + "id": 1210, "mutability": "mutable", "name": "__gap", "nameLocation": "3159:5:5", "nodeType": "VariableDeclaration", - "scope": 1214, + "scope": 1211, "src": "3139:25:5", "stateVariable": true, "storageLocation": "default", @@ -1559,7 +1559,7 @@ }, "typeName": { "baseType": { - "id": 1210, + "id": 1207, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "3139:7:5", @@ -1568,10 +1568,10 @@ "typeString": "uint256" } }, - "id": 1212, + "id": 1209, "length": { "hexValue": "3439", - "id": 1211, + "id": 1208, "isConstant": false, "isLValue": false, "isPure": true, @@ -1595,7 +1595,7 @@ "visibility": "private" } ], - "scope": 1215, + "scope": 1212, "src": "729:2438:5", "usedErrors": [] } @@ -1606,21 +1606,21 @@ "absolutePath": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol", "exportedSymbols": { "ContextUpgradeable": [ - 1892 + 1889 ], "Initializable": [ - 1383 + 1380 ], "OwnableUpgradeable": [ - 1214 + 1211 ] }, - "id": 1215, + "id": 1212, "license": "MIT", "nodeType": "SourceUnit", "nodes": [ { - "id": 1083, + "id": 1080, "literals": [ "solidity", "^", @@ -1633,11 +1633,11 @@ { "absolutePath": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol", "file": "../utils/ContextUpgradeable.sol", - "id": 1084, + "id": 1081, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", - "scope": 1215, - "sourceUnit": 1893, + "scope": 1212, + "sourceUnit": 1890, "src": "127:41:5", "symbolAliases": [], "unitAlias": "" @@ -1645,20 +1645,20 @@ { "absolutePath": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol", "file": "../proxy/utils/Initializable.sol", - "id": 1086, + "id": 1083, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", - "scope": 1215, - "sourceUnit": 1384, + "scope": 1212, + "sourceUnit": 1381, "src": "169:63:5", "symbolAliases": [ { "foreign": { - "id": 1085, + "id": 1082, "name": "Initializable", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1383, + "referencedDeclaration": 1380, "src": "177:13:5", "typeDescriptions": {} }, @@ -1672,31 +1672,31 @@ "baseContracts": [ { "baseName": { - "id": 1088, + "id": 1085, "name": "Initializable", "nameLocations": [ "769:13:5" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 1383, + "referencedDeclaration": 1380, "src": "769:13:5" }, - "id": 1089, + "id": 1086, "nodeType": "InheritanceSpecifier", "src": "769:13:5" }, { "baseName": { - "id": 1090, + "id": 1087, "name": "ContextUpgradeable", "nameLocations": [ "784:18:5" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 1892, + "referencedDeclaration": 1889, "src": "784:18:5" }, - "id": 1091, + "id": 1088, "nodeType": "InheritanceSpecifier", "src": "784:18:5" } @@ -1705,17 +1705,17 @@ "contractDependencies": [], "contractKind": "contract", "documentation": { - "id": 1087, + "id": 1084, "nodeType": "StructuredDocumentation", "src": "234:494:5", "text": " @dev Contract module which provides a basic access control mechanism, where\n there is an account (an owner) that can be granted exclusive access to\n specific functions.\n By default, the owner account will be the one that deploys the contract. This\n can later be changed with {transferOwnership}.\n This module is used through inheritance. It will make available the modifier\n `onlyOwner`, which can be applied to your functions to restrict their use to\n the owner." }, "fullyImplemented": true, - "id": 1214, + "id": 1211, "linearizedBaseContracts": [ - 1214, - 1892, - 1383 + 1211, + 1889, + 1380 ], "name": "OwnableUpgradeable", "nameLocation": "747:18:5", @@ -1723,12 +1723,12 @@ "nodes": [ { "constant": false, - "id": 1093, + "id": 1090, "mutability": "mutable", "name": "_owner", "nameLocation": "825:6:5", "nodeType": "VariableDeclaration", - "scope": 1214, + "scope": 1211, "src": "809:22:5", "stateVariable": true, "storageLocation": "default", @@ -1737,7 +1737,7 @@ "typeString": "address" }, "typeName": { - "id": 1092, + "id": 1089, "name": "address", "nodeType": "ElementaryTypeName", "src": "809:7:5", @@ -1752,23 +1752,23 @@ { "anonymous": false, "eventSelector": "8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0", - "id": 1099, + "id": 1096, "name": "OwnershipTransferred", "nameLocation": "844:20:5", "nodeType": "EventDefinition", "parameters": { - "id": 1098, + "id": 1095, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1095, + "id": 1092, "indexed": true, "mutability": "mutable", "name": "previousOwner", "nameLocation": "881:13:5", "nodeType": "VariableDeclaration", - "scope": 1099, + "scope": 1096, "src": "865:29:5", "stateVariable": false, "storageLocation": "default", @@ -1777,7 +1777,7 @@ "typeString": "address" }, "typeName": { - "id": 1094, + "id": 1091, "name": "address", "nodeType": "ElementaryTypeName", "src": "865:7:5", @@ -1791,13 +1791,13 @@ }, { "constant": false, - "id": 1097, + "id": 1094, "indexed": true, "mutability": "mutable", "name": "newOwner", "nameLocation": "912:8:5", "nodeType": "VariableDeclaration", - "scope": 1099, + "scope": 1096, "src": "896:24:5", "stateVariable": false, "storageLocation": "default", @@ -1806,7 +1806,7 @@ "typeString": "address" }, "typeName": { - "id": 1096, + "id": 1093, "name": "address", "nodeType": "ElementaryTypeName", "src": "896:7:5", @@ -1825,7 +1825,7 @@ }, { "body": { - "id": 1108, + "id": 1105, "nodeType": "Block", "src": "1076:43:5", "statements": [ @@ -1834,18 +1834,18 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 1105, + "id": 1102, "name": "__Ownable_init_unchained", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1120, + "referencedDeclaration": 1117, "src": "1086:24:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", "typeString": "function ()" } }, - "id": 1106, + "id": 1103, "isConstant": false, "isLValue": false, "isPure": false, @@ -1861,33 +1861,33 @@ "typeString": "tuple()" } }, - "id": 1107, + "id": 1104, "nodeType": "ExpressionStatement", "src": "1086:26:5" } ] }, "documentation": { - "id": 1100, + "id": 1097, "nodeType": "StructuredDocumentation", "src": "928:91:5", "text": " @dev Initializes the contract setting the deployer as the initial owner." }, - "id": 1109, + "id": 1106, "implemented": true, "kind": "function", "modifiers": [ { - "id": 1103, + "id": 1100, "kind": "modifierInvocation", "modifierName": { - "id": 1102, + "id": 1099, "name": "onlyInitializing", "nameLocations": [ "1059:16:5" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 1328, + "referencedDeclaration": 1325, "src": "1059:16:5" }, "nodeType": "ModifierInvocation", @@ -1898,18 +1898,18 @@ "nameLocation": "1033:14:5", "nodeType": "FunctionDefinition", "parameters": { - "id": 1101, + "id": 1098, "nodeType": "ParameterList", "parameters": [], "src": "1047:2:5" }, "returnParameters": { - "id": 1104, + "id": 1101, "nodeType": "ParameterList", "parameters": [], "src": "1076:0:5" }, - "scope": 1214, + "scope": 1211, "src": "1024:95:5", "stateMutability": "nonpayable", "virtual": false, @@ -1917,7 +1917,7 @@ }, { "body": { - "id": 1119, + "id": 1116, "nodeType": "Block", "src": "1187:49:5", "statements": [ @@ -1928,18 +1928,18 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 1115, + "id": 1112, "name": "_msgSender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1869, + "referencedDeclaration": 1866, "src": "1216:10:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", "typeString": "function () view returns (address)" } }, - "id": 1116, + "id": 1113, "isConstant": false, "isLValue": false, "isPure": false, @@ -1963,18 +1963,18 @@ "typeString": "address" } ], - "id": 1114, + "id": 1111, "name": "_transferOwnership", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1208, + "referencedDeclaration": 1205, "src": "1197:18:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$__$", "typeString": "function (address)" } }, - "id": 1117, + "id": 1114, "isConstant": false, "isLValue": false, "isPure": false, @@ -1990,27 +1990,27 @@ "typeString": "tuple()" } }, - "id": 1118, + "id": 1115, "nodeType": "ExpressionStatement", "src": "1197:32:5" } ] }, - "id": 1120, + "id": 1117, "implemented": true, "kind": "function", "modifiers": [ { - "id": 1112, + "id": 1109, "kind": "modifierInvocation", "modifierName": { - "id": 1111, + "id": 1108, "name": "onlyInitializing", "nameLocations": [ "1170:16:5" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 1328, + "referencedDeclaration": 1325, "src": "1170:16:5" }, "nodeType": "ModifierInvocation", @@ -2021,18 +2021,18 @@ "nameLocation": "1134:24:5", "nodeType": "FunctionDefinition", "parameters": { - "id": 1110, + "id": 1107, "nodeType": "ParameterList", "parameters": [], "src": "1158:2:5" }, "returnParameters": { - "id": 1113, + "id": 1110, "nodeType": "ParameterList", "parameters": [], "src": "1187:0:5" }, - "scope": 1214, + "scope": 1211, "src": "1125:111:5", "stateMutability": "nonpayable", "virtual": false, @@ -2040,7 +2040,7 @@ }, { "body": { - "id": 1127, + "id": 1124, "nodeType": "Block", "src": "1345:41:5", "statements": [ @@ -2049,18 +2049,18 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 1123, + "id": 1120, "name": "_checkOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1151, + "referencedDeclaration": 1148, "src": "1355:11:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$__$", "typeString": "function () view" } }, - "id": 1124, + "id": 1121, "isConstant": false, "isLValue": false, "isPure": false, @@ -2076,29 +2076,29 @@ "typeString": "tuple()" } }, - "id": 1125, + "id": 1122, "nodeType": "ExpressionStatement", "src": "1355:13:5" }, { - "id": 1126, + "id": 1123, "nodeType": "PlaceholderStatement", "src": "1378:1:5" } ] }, "documentation": { - "id": 1121, + "id": 1118, "nodeType": "StructuredDocumentation", "src": "1242:77:5", "text": " @dev Throws if called by any account other than the owner." }, - "id": 1128, + "id": 1125, "name": "onlyOwner", "nameLocation": "1333:9:5", "nodeType": "ModifierDefinition", "parameters": { - "id": 1122, + "id": 1119, "nodeType": "ParameterList", "parameters": [], "src": "1342:2:5" @@ -2109,38 +2109,38 @@ }, { "body": { - "id": 1136, + "id": 1133, "nodeType": "Block", "src": "1517:30:5", "statements": [ { "expression": { - "id": 1134, + "id": 1131, "name": "_owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1093, + "referencedDeclaration": 1090, "src": "1534:6:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "functionReturnParameters": 1133, - "id": 1135, + "functionReturnParameters": 1130, + "id": 1132, "nodeType": "Return", "src": "1527:13:5" } ] }, "documentation": { - "id": 1129, + "id": 1126, "nodeType": "StructuredDocumentation", "src": "1392:65:5", "text": " @dev Returns the address of the current owner." }, "functionSelector": "8da5cb5b", - "id": 1137, + "id": 1134, "implemented": true, "kind": "function", "modifiers": [], @@ -2148,23 +2148,23 @@ "nameLocation": "1471:5:5", "nodeType": "FunctionDefinition", "parameters": { - "id": 1130, + "id": 1127, "nodeType": "ParameterList", "parameters": [], "src": "1476:2:5" }, "returnParameters": { - "id": 1133, + "id": 1130, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1132, + "id": 1129, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 1137, + "scope": 1134, "src": "1508:7:5", "stateVariable": false, "storageLocation": "default", @@ -2173,7 +2173,7 @@ "typeString": "address" }, "typeName": { - "id": 1131, + "id": 1128, "name": "address", "nodeType": "ElementaryTypeName", "src": "1508:7:5", @@ -2188,7 +2188,7 @@ ], "src": "1507:9:5" }, - "scope": 1214, + "scope": 1211, "src": "1462:85:5", "stateMutability": "view", "virtual": true, @@ -2196,7 +2196,7 @@ }, { "body": { - "id": 1150, + "id": 1147, "nodeType": "Block", "src": "1665:85:5", "statements": [ @@ -2208,7 +2208,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 1146, + "id": 1143, "isConstant": false, "isLValue": false, "isPure": false, @@ -2217,18 +2217,18 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 1142, + "id": 1139, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1137, + "referencedDeclaration": 1134, "src": "1683:5:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", "typeString": "function () view returns (address)" } }, - "id": 1143, + "id": 1140, "isConstant": false, "isLValue": false, "isPure": false, @@ -2250,18 +2250,18 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 1144, + "id": 1141, "name": "_msgSender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1869, + "referencedDeclaration": 1866, "src": "1694:10:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", "typeString": "function () view returns (address)" } }, - "id": 1145, + "id": 1142, "isConstant": false, "isLValue": false, "isPure": false, @@ -2285,7 +2285,7 @@ }, { "hexValue": "4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572", - "id": 1147, + "id": 1144, "isConstant": false, "isLValue": false, "isPure": true, @@ -2311,7 +2311,7 @@ "typeString": "literal_string \"Ownable: caller is not the owner\"" } ], - "id": 1141, + "id": 1138, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -2325,7 +2325,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 1148, + "id": 1145, "isConstant": false, "isLValue": false, "isPure": false, @@ -2341,19 +2341,19 @@ "typeString": "tuple()" } }, - "id": 1149, + "id": 1146, "nodeType": "ExpressionStatement", "src": "1675:68:5" } ] }, "documentation": { - "id": 1138, + "id": 1135, "nodeType": "StructuredDocumentation", "src": "1553:62:5", "text": " @dev Throws if the sender is not the owner." }, - "id": 1151, + "id": 1148, "implemented": true, "kind": "function", "modifiers": [], @@ -2361,18 +2361,18 @@ "nameLocation": "1629:11:5", "nodeType": "FunctionDefinition", "parameters": { - "id": 1139, + "id": 1136, "nodeType": "ParameterList", "parameters": [], "src": "1640:2:5" }, "returnParameters": { - "id": 1140, + "id": 1137, "nodeType": "ParameterList", "parameters": [], "src": "1665:0:5" }, - "scope": 1214, + "scope": 1211, "src": "1620:130:5", "stateMutability": "view", "virtual": true, @@ -2380,7 +2380,7 @@ }, { "body": { - "id": 1164, + "id": 1161, "nodeType": "Block", "src": "2139:47:5", "statements": [ @@ -2391,7 +2391,7 @@ "arguments": [ { "hexValue": "30", - "id": 1160, + "id": 1157, "isConstant": false, "isLValue": false, "isPure": true, @@ -2413,7 +2413,7 @@ "typeString": "int_const 0" } ], - "id": 1159, + "id": 1156, "isConstant": false, "isLValue": false, "isPure": true, @@ -2425,14 +2425,14 @@ "typeString": "type(address)" }, "typeName": { - "id": 1158, + "id": 1155, "name": "address", "nodeType": "ElementaryTypeName", "src": "2168:7:5", "typeDescriptions": {} } }, - "id": 1161, + "id": 1158, "isConstant": false, "isLValue": false, "isPure": true, @@ -2456,18 +2456,18 @@ "typeString": "address" } ], - "id": 1157, + "id": 1154, "name": "_transferOwnership", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1208, + "referencedDeclaration": 1205, "src": "2149:18:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$__$", "typeString": "function (address)" } }, - "id": 1162, + "id": 1159, "isConstant": false, "isLValue": false, "isPure": false, @@ -2483,34 +2483,34 @@ "typeString": "tuple()" } }, - "id": 1163, + "id": 1160, "nodeType": "ExpressionStatement", "src": "2149:30:5" } ] }, "documentation": { - "id": 1152, + "id": 1149, "nodeType": "StructuredDocumentation", "src": "1756:324:5", "text": " @dev Leaves the contract without owner. It will not be possible to call\n `onlyOwner` functions. Can only be called by the current owner.\n NOTE: Renouncing ownership will leave the contract without an owner,\n thereby disabling any functionality that is only available to the owner." }, "functionSelector": "715018a6", - "id": 1165, + "id": 1162, "implemented": true, "kind": "function", "modifiers": [ { - "id": 1155, + "id": 1152, "kind": "modifierInvocation", "modifierName": { - "id": 1154, + "id": 1151, "name": "onlyOwner", "nameLocations": [ "2129:9:5" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 1128, + "referencedDeclaration": 1125, "src": "2129:9:5" }, "nodeType": "ModifierInvocation", @@ -2521,18 +2521,18 @@ "nameLocation": "2094:17:5", "nodeType": "FunctionDefinition", "parameters": { - "id": 1153, + "id": 1150, "nodeType": "ParameterList", "parameters": [], "src": "2111:2:5" }, "returnParameters": { - "id": 1156, + "id": 1153, "nodeType": "ParameterList", "parameters": [], "src": "2139:0:5" }, - "scope": 1214, + "scope": 1211, "src": "2085:101:5", "stateMutability": "nonpayable", "virtual": true, @@ -2540,7 +2540,7 @@ }, { "body": { - "id": 1187, + "id": 1184, "nodeType": "Block", "src": "2405:128:5", "statements": [ @@ -2552,17 +2552,17 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 1179, + "id": 1176, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 1174, + "id": 1171, "name": "newOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1168, + "referencedDeclaration": 1165, "src": "2423:8:5", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2575,7 +2575,7 @@ "arguments": [ { "hexValue": "30", - "id": 1177, + "id": 1174, "isConstant": false, "isLValue": false, "isPure": true, @@ -2597,7 +2597,7 @@ "typeString": "int_const 0" } ], - "id": 1176, + "id": 1173, "isConstant": false, "isLValue": false, "isPure": true, @@ -2609,14 +2609,14 @@ "typeString": "type(address)" }, "typeName": { - "id": 1175, + "id": 1172, "name": "address", "nodeType": "ElementaryTypeName", "src": "2435:7:5", "typeDescriptions": {} } }, - "id": 1178, + "id": 1175, "isConstant": false, "isLValue": false, "isPure": true, @@ -2640,7 +2640,7 @@ }, { "hexValue": "4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061646472657373", - "id": 1180, + "id": 1177, "isConstant": false, "isLValue": false, "isPure": true, @@ -2666,7 +2666,7 @@ "typeString": "literal_string \"Ownable: new owner is the zero address\"" } ], - "id": 1173, + "id": 1170, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -2680,7 +2680,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 1181, + "id": 1178, "isConstant": false, "isLValue": false, "isPure": false, @@ -2696,7 +2696,7 @@ "typeString": "tuple()" } }, - "id": 1182, + "id": 1179, "nodeType": "ExpressionStatement", "src": "2415:73:5" }, @@ -2704,11 +2704,11 @@ "expression": { "arguments": [ { - "id": 1184, + "id": 1181, "name": "newOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1168, + "referencedDeclaration": 1165, "src": "2517:8:5", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2723,18 +2723,18 @@ "typeString": "address" } ], - "id": 1183, + "id": 1180, "name": "_transferOwnership", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1208, + "referencedDeclaration": 1205, "src": "2498:18:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$__$", "typeString": "function (address)" } }, - "id": 1185, + "id": 1182, "isConstant": false, "isLValue": false, "isPure": false, @@ -2750,34 +2750,34 @@ "typeString": "tuple()" } }, - "id": 1186, + "id": 1183, "nodeType": "ExpressionStatement", "src": "2498:28:5" } ] }, "documentation": { - "id": 1166, + "id": 1163, "nodeType": "StructuredDocumentation", "src": "2192:138:5", "text": " @dev Transfers ownership of the contract to a new account (`newOwner`).\n Can only be called by the current owner." }, "functionSelector": "f2fde38b", - "id": 1188, + "id": 1185, "implemented": true, "kind": "function", "modifiers": [ { - "id": 1171, + "id": 1168, "kind": "modifierInvocation", "modifierName": { - "id": 1170, + "id": 1167, "name": "onlyOwner", "nameLocations": [ "2395:9:5" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 1128, + "referencedDeclaration": 1125, "src": "2395:9:5" }, "nodeType": "ModifierInvocation", @@ -2788,17 +2788,17 @@ "nameLocation": "2344:17:5", "nodeType": "FunctionDefinition", "parameters": { - "id": 1169, + "id": 1166, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1168, + "id": 1165, "mutability": "mutable", "name": "newOwner", "nameLocation": "2370:8:5", "nodeType": "VariableDeclaration", - "scope": 1188, + "scope": 1185, "src": "2362:16:5", "stateVariable": false, "storageLocation": "default", @@ -2807,7 +2807,7 @@ "typeString": "address" }, "typeName": { - "id": 1167, + "id": 1164, "name": "address", "nodeType": "ElementaryTypeName", "src": "2362:7:5", @@ -2823,12 +2823,12 @@ "src": "2361:18:5" }, "returnParameters": { - "id": 1172, + "id": 1169, "nodeType": "ParameterList", "parameters": [], "src": "2405:0:5" }, - "scope": 1214, + "scope": 1211, "src": "2335:198:5", "stateMutability": "nonpayable", "virtual": true, @@ -2836,23 +2836,23 @@ }, { "body": { - "id": 1207, + "id": 1204, "nodeType": "Block", "src": "2750:124:5", "statements": [ { "assignments": [ - 1195 + 1192 ], "declarations": [ { "constant": false, - "id": 1195, + "id": 1192, "mutability": "mutable", "name": "oldOwner", "nameLocation": "2768:8:5", "nodeType": "VariableDeclaration", - "scope": 1207, + "scope": 1204, "src": "2760:16:5", "stateVariable": false, "storageLocation": "default", @@ -2861,7 +2861,7 @@ "typeString": "address" }, "typeName": { - "id": 1194, + "id": 1191, "name": "address", "nodeType": "ElementaryTypeName", "src": "2760:7:5", @@ -2874,13 +2874,13 @@ "visibility": "internal" } ], - "id": 1197, + "id": 1194, "initialValue": { - "id": 1196, + "id": 1193, "name": "_owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1093, + "referencedDeclaration": 1090, "src": "2779:6:5", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2892,17 +2892,17 @@ }, { "expression": { - "id": 1200, + "id": 1197, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 1198, + "id": 1195, "name": "_owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1093, + "referencedDeclaration": 1090, "src": "2795:6:5", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2912,11 +2912,11 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 1199, + "id": 1196, "name": "newOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1191, + "referencedDeclaration": 1188, "src": "2804:8:5", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2929,7 +2929,7 @@ "typeString": "address" } }, - "id": 1201, + "id": 1198, "nodeType": "ExpressionStatement", "src": "2795:17:5" }, @@ -2937,11 +2937,11 @@ "eventCall": { "arguments": [ { - "id": 1203, + "id": 1200, "name": "oldOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1195, + "referencedDeclaration": 1192, "src": "2848:8:5", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2949,11 +2949,11 @@ } }, { - "id": 1204, + "id": 1201, "name": "newOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1191, + "referencedDeclaration": 1188, "src": "2858:8:5", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2972,18 +2972,18 @@ "typeString": "address" } ], - "id": 1202, + "id": 1199, "name": "OwnershipTransferred", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1099, + "referencedDeclaration": 1096, "src": "2827:20:5", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$returns$__$", "typeString": "function (address,address)" } }, - "id": 1205, + "id": 1202, "isConstant": false, "isLValue": false, "isPure": false, @@ -2999,19 +2999,19 @@ "typeString": "tuple()" } }, - "id": 1206, + "id": 1203, "nodeType": "EmitStatement", "src": "2822:45:5" } ] }, "documentation": { - "id": 1189, + "id": 1186, "nodeType": "StructuredDocumentation", "src": "2539:143:5", "text": " @dev Transfers ownership of the contract to a new account (`newOwner`).\n Internal function without access restriction." }, - "id": 1208, + "id": 1205, "implemented": true, "kind": "function", "modifiers": [], @@ -3019,17 +3019,17 @@ "nameLocation": "2696:18:5", "nodeType": "FunctionDefinition", "parameters": { - "id": 1192, + "id": 1189, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1191, + "id": 1188, "mutability": "mutable", "name": "newOwner", "nameLocation": "2723:8:5", "nodeType": "VariableDeclaration", - "scope": 1208, + "scope": 1205, "src": "2715:16:5", "stateVariable": false, "storageLocation": "default", @@ -3038,7 +3038,7 @@ "typeString": "address" }, "typeName": { - "id": 1190, + "id": 1187, "name": "address", "nodeType": "ElementaryTypeName", "src": "2715:7:5", @@ -3054,12 +3054,12 @@ "src": "2714:18:5" }, "returnParameters": { - "id": 1193, + "id": 1190, "nodeType": "ParameterList", "parameters": [], "src": "2750:0:5" }, - "scope": 1214, + "scope": 1211, "src": "2687:187:5", "stateMutability": "nonpayable", "virtual": true, @@ -3068,17 +3068,17 @@ { "constant": false, "documentation": { - "id": 1209, + "id": 1206, "nodeType": "StructuredDocumentation", "src": "2880:254:5", "text": " @dev This empty reserved space is put in place to allow future versions to add new\n variables without shifting down storage in the inheritance chain.\n See https://docs.openzeppelin.com/contracts/4.x/upgradeable#storage_gaps" }, - "id": 1213, + "id": 1210, "mutability": "mutable", "name": "__gap", "nameLocation": "3159:5:5", "nodeType": "VariableDeclaration", - "scope": 1214, + "scope": 1211, "src": "3139:25:5", "stateVariable": true, "storageLocation": "default", @@ -3088,7 +3088,7 @@ }, "typeName": { "baseType": { - "id": 1210, + "id": 1207, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "3139:7:5", @@ -3097,10 +3097,10 @@ "typeString": "uint256" } }, - "id": 1212, + "id": 1209, "length": { "hexValue": "3439", - "id": 1211, + "id": 1208, "isConstant": false, "isLValue": false, "isPure": true, @@ -3124,7 +3124,7 @@ "visibility": "private" } ], - "scope": 1215, + "scope": 1212, "src": "729:2438:5", "usedErrors": [] } @@ -3137,5 +3137,5 @@ }, "networks": {}, "schemaVersion": "2.0.1", - "updatedAt": "2024-06-20T09:33:52.551Z" + "updatedAt": "2024-06-27T12:24:25.262Z" } \ No newline at end of file diff --git a/build/contracts/PausableUpgradeable.json b/build/contracts/PausableUpgradeable.json index 9fa7b4f..2ddae33 100644 --- a/build/contracts/PausableUpgradeable.json +++ b/build/contracts/PausableUpgradeable.json @@ -64,21 +64,21 @@ "absolutePath": "@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol", "exportedSymbols": { "ContextUpgradeable": [ - 1892 + 1889 ], "Initializable": [ - 1383 + 1380 ], "PausableUpgradeable": [ - 1511 + 1508 ] }, - "id": 1512, + "id": 1509, "license": "MIT", "nodeType": "SourceUnit", "nodes": [ { - "id": 1385, + "id": 1382, "literals": [ "solidity", "^", @@ -91,11 +91,11 @@ { "absolutePath": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol", "file": "../utils/ContextUpgradeable.sol", - "id": 1386, + "id": 1383, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", - "scope": 1512, - "sourceUnit": 1893, + "scope": 1509, + "sourceUnit": 1890, "src": "130:41:7", "symbolAliases": [], "unitAlias": "" @@ -103,20 +103,20 @@ { "absolutePath": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol", "file": "../proxy/utils/Initializable.sol", - "id": 1388, + "id": 1385, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", - "scope": 1512, - "sourceUnit": 1384, + "scope": 1509, + "sourceUnit": 1381, "src": "172:63:7", "symbolAliases": [ { "foreign": { - "id": 1387, + "id": 1384, "name": "Initializable", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1383, + "referencedDeclaration": 1380, "src": "180:13:7", "typeDescriptions": {} }, @@ -130,31 +130,31 @@ "baseContracts": [ { "baseName": { - "id": 1390, + "id": 1387, "name": "Initializable", "nameLocations": [ "718:13:7" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 1383, + "referencedDeclaration": 1380, "src": "718:13:7" }, - "id": 1391, + "id": 1388, "nodeType": "InheritanceSpecifier", "src": "718:13:7" }, { "baseName": { - "id": 1392, + "id": 1389, "name": "ContextUpgradeable", "nameLocations": [ "733:18:7" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 1892, + "referencedDeclaration": 1889, "src": "733:18:7" }, - "id": 1393, + "id": 1390, "nodeType": "InheritanceSpecifier", "src": "733:18:7" } @@ -163,17 +163,17 @@ "contractDependencies": [], "contractKind": "contract", "documentation": { - "id": 1389, + "id": 1386, "nodeType": "StructuredDocumentation", "src": "237:439:7", "text": " @dev Contract module which allows children to implement an emergency stop\n mechanism that can be triggered by an authorized account.\n This module is used through inheritance. It will make available the\n modifiers `whenNotPaused` and `whenPaused`, which can be applied to\n the functions of your contract. Note that they will not be pausable by\n simply including this module, only once the modifiers are put in place." }, "fullyImplemented": true, - "id": 1511, + "id": 1508, "linearizedBaseContracts": [ - 1511, - 1892, - 1383 + 1508, + 1889, + 1380 ], "name": "PausableUpgradeable", "nameLocation": "695:19:7", @@ -182,29 +182,29 @@ { "anonymous": false, "documentation": { - "id": 1394, + "id": 1391, "nodeType": "StructuredDocumentation", "src": "758:73:7", "text": " @dev Emitted when the pause is triggered by `account`." }, "eventSelector": "62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258", - "id": 1398, + "id": 1395, "name": "Paused", "nameLocation": "842:6:7", "nodeType": "EventDefinition", "parameters": { - "id": 1397, + "id": 1394, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1396, + "id": 1393, "indexed": false, "mutability": "mutable", "name": "account", "nameLocation": "857:7:7", "nodeType": "VariableDeclaration", - "scope": 1398, + "scope": 1395, "src": "849:15:7", "stateVariable": false, "storageLocation": "default", @@ -213,7 +213,7 @@ "typeString": "address" }, "typeName": { - "id": 1395, + "id": 1392, "name": "address", "nodeType": "ElementaryTypeName", "src": "849:7:7", @@ -233,29 +233,29 @@ { "anonymous": false, "documentation": { - "id": 1399, + "id": 1396, "nodeType": "StructuredDocumentation", "src": "872:70:7", "text": " @dev Emitted when the pause is lifted by `account`." }, "eventSelector": "5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa", - "id": 1403, + "id": 1400, "name": "Unpaused", "nameLocation": "953:8:7", "nodeType": "EventDefinition", "parameters": { - "id": 1402, + "id": 1399, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1401, + "id": 1398, "indexed": false, "mutability": "mutable", "name": "account", "nameLocation": "970:7:7", "nodeType": "VariableDeclaration", - "scope": 1403, + "scope": 1400, "src": "962:15:7", "stateVariable": false, "storageLocation": "default", @@ -264,7 +264,7 @@ "typeString": "address" }, "typeName": { - "id": 1400, + "id": 1397, "name": "address", "nodeType": "ElementaryTypeName", "src": "962:7:7", @@ -283,12 +283,12 @@ }, { "constant": false, - "id": 1405, + "id": 1402, "mutability": "mutable", "name": "_paused", "nameLocation": "998:7:7", "nodeType": "VariableDeclaration", - "scope": 1511, + "scope": 1508, "src": "985:20:7", "stateVariable": true, "storageLocation": "default", @@ -297,7 +297,7 @@ "typeString": "bool" }, "typeName": { - "id": 1404, + "id": 1401, "name": "bool", "nodeType": "ElementaryTypeName", "src": "985:4:7", @@ -310,7 +310,7 @@ }, { "body": { - "id": 1414, + "id": 1411, "nodeType": "Block", "src": "1137:44:7", "statements": [ @@ -319,18 +319,18 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 1411, + "id": 1408, "name": "__Pausable_init_unchained", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1425, + "referencedDeclaration": 1422, "src": "1147:25:7", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", "typeString": "function ()" } }, - "id": 1412, + "id": 1409, "isConstant": false, "isLValue": false, "isPure": false, @@ -346,33 +346,33 @@ "typeString": "tuple()" } }, - "id": 1413, + "id": 1410, "nodeType": "ExpressionStatement", "src": "1147:27:7" } ] }, "documentation": { - "id": 1406, + "id": 1403, "nodeType": "StructuredDocumentation", "src": "1012:67:7", "text": " @dev Initializes the contract in unpaused state." }, - "id": 1415, + "id": 1412, "implemented": true, "kind": "function", "modifiers": [ { - "id": 1409, + "id": 1406, "kind": "modifierInvocation", "modifierName": { - "id": 1408, + "id": 1405, "name": "onlyInitializing", "nameLocations": [ "1120:16:7" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 1328, + "referencedDeclaration": 1325, "src": "1120:16:7" }, "nodeType": "ModifierInvocation", @@ -383,18 +383,18 @@ "nameLocation": "1093:15:7", "nodeType": "FunctionDefinition", "parameters": { - "id": 1407, + "id": 1404, "nodeType": "ParameterList", "parameters": [], "src": "1108:2:7" }, "returnParameters": { - "id": 1410, + "id": 1407, "nodeType": "ParameterList", "parameters": [], "src": "1137:0:7" }, - "scope": 1511, + "scope": 1508, "src": "1084:97:7", "stateMutability": "nonpayable", "virtual": false, @@ -402,23 +402,23 @@ }, { "body": { - "id": 1424, + "id": 1421, "nodeType": "Block", "src": "1250:32:7", "statements": [ { "expression": { - "id": 1422, + "id": 1419, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 1420, + "id": 1417, "name": "_paused", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1405, + "referencedDeclaration": 1402, "src": "1260:7:7", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -429,7 +429,7 @@ "operator": "=", "rightHandSide": { "hexValue": "66616c7365", - "id": 1421, + "id": 1418, "isConstant": false, "isLValue": false, "isPure": true, @@ -449,27 +449,27 @@ "typeString": "bool" } }, - "id": 1423, + "id": 1420, "nodeType": "ExpressionStatement", "src": "1260:15:7" } ] }, - "id": 1425, + "id": 1422, "implemented": true, "kind": "function", "modifiers": [ { - "id": 1418, + "id": 1415, "kind": "modifierInvocation", "modifierName": { - "id": 1417, + "id": 1414, "name": "onlyInitializing", "nameLocations": [ "1233:16:7" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 1328, + "referencedDeclaration": 1325, "src": "1233:16:7" }, "nodeType": "ModifierInvocation", @@ -480,18 +480,18 @@ "nameLocation": "1196:25:7", "nodeType": "FunctionDefinition", "parameters": { - "id": 1416, + "id": 1413, "nodeType": "ParameterList", "parameters": [], "src": "1221:2:7" }, "returnParameters": { - "id": 1419, + "id": 1416, "nodeType": "ParameterList", "parameters": [], "src": "1250:0:7" }, - "scope": 1511, + "scope": 1508, "src": "1187:95:7", "stateMutability": "nonpayable", "virtual": false, @@ -499,7 +499,7 @@ }, { "body": { - "id": 1432, + "id": 1429, "nodeType": "Block", "src": "1493:47:7", "statements": [ @@ -508,18 +508,18 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 1428, + "id": 1425, "name": "_requireNotPaused", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1462, + "referencedDeclaration": 1459, "src": "1503:17:7", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$__$", "typeString": "function () view" } }, - "id": 1429, + "id": 1426, "isConstant": false, "isLValue": false, "isPure": false, @@ -535,29 +535,29 @@ "typeString": "tuple()" } }, - "id": 1430, + "id": 1427, "nodeType": "ExpressionStatement", "src": "1503:19:7" }, { - "id": 1431, + "id": 1428, "nodeType": "PlaceholderStatement", "src": "1532:1:7" } ] }, "documentation": { - "id": 1426, + "id": 1423, "nodeType": "StructuredDocumentation", "src": "1288:175:7", "text": " @dev Modifier to make a function callable only when the contract is not paused.\n Requirements:\n - The contract must not be paused." }, - "id": 1433, + "id": 1430, "name": "whenNotPaused", "nameLocation": "1477:13:7", "nodeType": "ModifierDefinition", "parameters": { - "id": 1427, + "id": 1424, "nodeType": "ParameterList", "parameters": [], "src": "1490:2:7" @@ -568,7 +568,7 @@ }, { "body": { - "id": 1440, + "id": 1437, "nodeType": "Block", "src": "1740:44:7", "statements": [ @@ -577,18 +577,18 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 1436, + "id": 1433, "name": "_requirePaused", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1473, + "referencedDeclaration": 1470, "src": "1750:14:7", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$__$", "typeString": "function () view" } }, - "id": 1437, + "id": 1434, "isConstant": false, "isLValue": false, "isPure": false, @@ -604,29 +604,29 @@ "typeString": "tuple()" } }, - "id": 1438, + "id": 1435, "nodeType": "ExpressionStatement", "src": "1750:16:7" }, { - "id": 1439, + "id": 1436, "nodeType": "PlaceholderStatement", "src": "1776:1:7" } ] }, "documentation": { - "id": 1434, + "id": 1431, "nodeType": "StructuredDocumentation", "src": "1546:167:7", "text": " @dev Modifier to make a function callable only when the contract is paused.\n Requirements:\n - The contract must be paused." }, - "id": 1441, + "id": 1438, "name": "whenPaused", "nameLocation": "1727:10:7", "nodeType": "ModifierDefinition", "parameters": { - "id": 1435, + "id": 1432, "nodeType": "ParameterList", "parameters": [], "src": "1737:2:7" @@ -637,38 +637,38 @@ }, { "body": { - "id": 1449, + "id": 1446, "nodeType": "Block", "src": "1932:31:7", "statements": [ { "expression": { - "id": 1447, + "id": 1444, "name": "_paused", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1405, + "referencedDeclaration": 1402, "src": "1949:7:7", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 1446, - "id": 1448, + "functionReturnParameters": 1443, + "id": 1445, "nodeType": "Return", "src": "1942:14:7" } ] }, "documentation": { - "id": 1442, + "id": 1439, "nodeType": "StructuredDocumentation", "src": "1790:84:7", "text": " @dev Returns true if the contract is paused, and false otherwise." }, "functionSelector": "5c975abb", - "id": 1450, + "id": 1447, "implemented": true, "kind": "function", "modifiers": [], @@ -676,23 +676,23 @@ "nameLocation": "1888:6:7", "nodeType": "FunctionDefinition", "parameters": { - "id": 1443, + "id": 1440, "nodeType": "ParameterList", "parameters": [], "src": "1894:2:7" }, "returnParameters": { - "id": 1446, + "id": 1443, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1445, + "id": 1442, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 1450, + "scope": 1447, "src": "1926:4:7", "stateVariable": false, "storageLocation": "default", @@ -701,7 +701,7 @@ "typeString": "bool" }, "typeName": { - "id": 1444, + "id": 1441, "name": "bool", "nodeType": "ElementaryTypeName", "src": "1926:4:7", @@ -715,7 +715,7 @@ ], "src": "1925:6:7" }, - "scope": 1511, + "scope": 1508, "src": "1879:84:7", "stateMutability": "view", "virtual": true, @@ -723,7 +723,7 @@ }, { "body": { - "id": 1461, + "id": 1458, "nodeType": "Block", "src": "2082:55:7", "statements": [ @@ -731,7 +731,7 @@ "expression": { "arguments": [ { - "id": 1457, + "id": 1454, "isConstant": false, "isLValue": false, "isPure": false, @@ -744,18 +744,18 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 1455, + "id": 1452, "name": "paused", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1450, + "referencedDeclaration": 1447, "src": "2101:6:7", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_bool_$", "typeString": "function () view returns (bool)" } }, - "id": 1456, + "id": 1453, "isConstant": false, "isLValue": false, "isPure": false, @@ -778,7 +778,7 @@ }, { "hexValue": "5061757361626c653a20706175736564", - "id": 1458, + "id": 1455, "isConstant": false, "isLValue": false, "isPure": true, @@ -804,7 +804,7 @@ "typeString": "literal_string \"Pausable: paused\"" } ], - "id": 1454, + "id": 1451, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -818,7 +818,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 1459, + "id": 1456, "isConstant": false, "isLValue": false, "isPure": false, @@ -834,19 +834,19 @@ "typeString": "tuple()" } }, - "id": 1460, + "id": 1457, "nodeType": "ExpressionStatement", "src": "2092:38:7" } ] }, "documentation": { - "id": 1451, + "id": 1448, "nodeType": "StructuredDocumentation", "src": "1969:57:7", "text": " @dev Throws if the contract is paused." }, - "id": 1462, + "id": 1459, "implemented": true, "kind": "function", "modifiers": [], @@ -854,18 +854,18 @@ "nameLocation": "2040:17:7", "nodeType": "FunctionDefinition", "parameters": { - "id": 1452, + "id": 1449, "nodeType": "ParameterList", "parameters": [], "src": "2057:2:7" }, "returnParameters": { - "id": 1453, + "id": 1450, "nodeType": "ParameterList", "parameters": [], "src": "2082:0:7" }, - "scope": 1511, + "scope": 1508, "src": "2031:106:7", "stateMutability": "view", "virtual": true, @@ -873,7 +873,7 @@ }, { "body": { - "id": 1472, + "id": 1469, "nodeType": "Block", "src": "2257:58:7", "statements": [ @@ -884,18 +884,18 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 1467, + "id": 1464, "name": "paused", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1450, + "referencedDeclaration": 1447, "src": "2275:6:7", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_bool_$", "typeString": "function () view returns (bool)" } }, - "id": 1468, + "id": 1465, "isConstant": false, "isLValue": false, "isPure": false, @@ -913,7 +913,7 @@ }, { "hexValue": "5061757361626c653a206e6f7420706175736564", - "id": 1469, + "id": 1466, "isConstant": false, "isLValue": false, "isPure": true, @@ -939,7 +939,7 @@ "typeString": "literal_string \"Pausable: not paused\"" } ], - "id": 1466, + "id": 1463, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -953,7 +953,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 1470, + "id": 1467, "isConstant": false, "isLValue": false, "isPure": false, @@ -969,19 +969,19 @@ "typeString": "tuple()" } }, - "id": 1471, + "id": 1468, "nodeType": "ExpressionStatement", "src": "2267:41:7" } ] }, "documentation": { - "id": 1463, + "id": 1460, "nodeType": "StructuredDocumentation", "src": "2143:61:7", "text": " @dev Throws if the contract is not paused." }, - "id": 1473, + "id": 1470, "implemented": true, "kind": "function", "modifiers": [], @@ -989,18 +989,18 @@ "nameLocation": "2218:14:7", "nodeType": "FunctionDefinition", "parameters": { - "id": 1464, + "id": 1461, "nodeType": "ParameterList", "parameters": [], "src": "2232:2:7" }, "returnParameters": { - "id": 1465, + "id": 1462, "nodeType": "ParameterList", "parameters": [], "src": "2257:0:7" }, - "scope": 1511, + "scope": 1508, "src": "2209:106:7", "stateMutability": "view", "virtual": true, @@ -1008,23 +1008,23 @@ }, { "body": { - "id": 1488, + "id": 1485, "nodeType": "Block", "src": "2499:66:7", "statements": [ { "expression": { - "id": 1481, + "id": 1478, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 1479, + "id": 1476, "name": "_paused", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1405, + "referencedDeclaration": 1402, "src": "2509:7:7", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -1035,7 +1035,7 @@ "operator": "=", "rightHandSide": { "hexValue": "74727565", - "id": 1480, + "id": 1477, "isConstant": false, "isLValue": false, "isPure": true, @@ -1055,7 +1055,7 @@ "typeString": "bool" } }, - "id": 1482, + "id": 1479, "nodeType": "ExpressionStatement", "src": "2509:14:7" }, @@ -1066,18 +1066,18 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 1484, + "id": 1481, "name": "_msgSender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1869, + "referencedDeclaration": 1866, "src": "2545:10:7", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", "typeString": "function () view returns (address)" } }, - "id": 1485, + "id": 1482, "isConstant": false, "isLValue": false, "isPure": false, @@ -1101,18 +1101,18 @@ "typeString": "address" } ], - "id": 1483, + "id": 1480, "name": "Paused", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1398, + "referencedDeclaration": 1395, "src": "2538:6:7", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$returns$__$", "typeString": "function (address)" } }, - "id": 1486, + "id": 1483, "isConstant": false, "isLValue": false, "isPure": false, @@ -1128,33 +1128,33 @@ "typeString": "tuple()" } }, - "id": 1487, + "id": 1484, "nodeType": "EmitStatement", "src": "2533:25:7" } ] }, "documentation": { - "id": 1474, + "id": 1471, "nodeType": "StructuredDocumentation", "src": "2321:124:7", "text": " @dev Triggers stopped state.\n Requirements:\n - The contract must not be paused." }, - "id": 1489, + "id": 1486, "implemented": true, "kind": "function", "modifiers": [ { - "id": 1477, + "id": 1474, "kind": "modifierInvocation", "modifierName": { - "id": 1476, + "id": 1473, "name": "whenNotPaused", "nameLocations": [ "2485:13:7" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 1433, + "referencedDeclaration": 1430, "src": "2485:13:7" }, "nodeType": "ModifierInvocation", @@ -1165,18 +1165,18 @@ "nameLocation": "2459:6:7", "nodeType": "FunctionDefinition", "parameters": { - "id": 1475, + "id": 1472, "nodeType": "ParameterList", "parameters": [], "src": "2465:2:7" }, "returnParameters": { - "id": 1478, + "id": 1475, "nodeType": "ParameterList", "parameters": [], "src": "2499:0:7" }, - "scope": 1511, + "scope": 1508, "src": "2450:115:7", "stateMutability": "nonpayable", "virtual": true, @@ -1184,23 +1184,23 @@ }, { "body": { - "id": 1504, + "id": 1501, "nodeType": "Block", "src": "2745:69:7", "statements": [ { "expression": { - "id": 1497, + "id": 1494, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 1495, + "id": 1492, "name": "_paused", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1405, + "referencedDeclaration": 1402, "src": "2755:7:7", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -1211,7 +1211,7 @@ "operator": "=", "rightHandSide": { "hexValue": "66616c7365", - "id": 1496, + "id": 1493, "isConstant": false, "isLValue": false, "isPure": true, @@ -1231,7 +1231,7 @@ "typeString": "bool" } }, - "id": 1498, + "id": 1495, "nodeType": "ExpressionStatement", "src": "2755:15:7" }, @@ -1242,18 +1242,18 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 1500, + "id": 1497, "name": "_msgSender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1869, + "referencedDeclaration": 1866, "src": "2794:10:7", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", "typeString": "function () view returns (address)" } }, - "id": 1501, + "id": 1498, "isConstant": false, "isLValue": false, "isPure": false, @@ -1277,18 +1277,18 @@ "typeString": "address" } ], - "id": 1499, + "id": 1496, "name": "Unpaused", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1403, + "referencedDeclaration": 1400, "src": "2785:8:7", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$returns$__$", "typeString": "function (address)" } }, - "id": 1502, + "id": 1499, "isConstant": false, "isLValue": false, "isPure": false, @@ -1304,33 +1304,33 @@ "typeString": "tuple()" } }, - "id": 1503, + "id": 1500, "nodeType": "EmitStatement", "src": "2780:27:7" } ] }, "documentation": { - "id": 1490, + "id": 1487, "nodeType": "StructuredDocumentation", "src": "2571:121:7", "text": " @dev Returns to normal state.\n Requirements:\n - The contract must be paused." }, - "id": 1505, + "id": 1502, "implemented": true, "kind": "function", "modifiers": [ { - "id": 1493, + "id": 1490, "kind": "modifierInvocation", "modifierName": { - "id": 1492, + "id": 1489, "name": "whenPaused", "nameLocations": [ "2734:10:7" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 1441, + "referencedDeclaration": 1438, "src": "2734:10:7" }, "nodeType": "ModifierInvocation", @@ -1341,18 +1341,18 @@ "nameLocation": "2706:8:7", "nodeType": "FunctionDefinition", "parameters": { - "id": 1491, + "id": 1488, "nodeType": "ParameterList", "parameters": [], "src": "2714:2:7" }, "returnParameters": { - "id": 1494, + "id": 1491, "nodeType": "ParameterList", "parameters": [], "src": "2745:0:7" }, - "scope": 1511, + "scope": 1508, "src": "2697:117:7", "stateMutability": "nonpayable", "virtual": true, @@ -1361,17 +1361,17 @@ { "constant": false, "documentation": { - "id": 1506, + "id": 1503, "nodeType": "StructuredDocumentation", "src": "2820:254:7", "text": " @dev This empty reserved space is put in place to allow future versions to add new\n variables without shifting down storage in the inheritance chain.\n See https://docs.openzeppelin.com/contracts/4.x/upgradeable#storage_gaps" }, - "id": 1510, + "id": 1507, "mutability": "mutable", "name": "__gap", "nameLocation": "3099:5:7", "nodeType": "VariableDeclaration", - "scope": 1511, + "scope": 1508, "src": "3079:25:7", "stateVariable": true, "storageLocation": "default", @@ -1381,7 +1381,7 @@ }, "typeName": { "baseType": { - "id": 1507, + "id": 1504, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "3079:7:7", @@ -1390,10 +1390,10 @@ "typeString": "uint256" } }, - "id": 1509, + "id": 1506, "length": { "hexValue": "3439", - "id": 1508, + "id": 1505, "isConstant": false, "isLValue": false, "isPure": true, @@ -1417,7 +1417,7 @@ "visibility": "private" } ], - "scope": 1512, + "scope": 1509, "src": "677:2430:7", "usedErrors": [] } @@ -1428,21 +1428,21 @@ "absolutePath": "@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol", "exportedSymbols": { "ContextUpgradeable": [ - 1892 + 1889 ], "Initializable": [ - 1383 + 1380 ], "PausableUpgradeable": [ - 1511 + 1508 ] }, - "id": 1512, + "id": 1509, "license": "MIT", "nodeType": "SourceUnit", "nodes": [ { - "id": 1385, + "id": 1382, "literals": [ "solidity", "^", @@ -1455,11 +1455,11 @@ { "absolutePath": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol", "file": "../utils/ContextUpgradeable.sol", - "id": 1386, + "id": 1383, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", - "scope": 1512, - "sourceUnit": 1893, + "scope": 1509, + "sourceUnit": 1890, "src": "130:41:7", "symbolAliases": [], "unitAlias": "" @@ -1467,20 +1467,20 @@ { "absolutePath": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol", "file": "../proxy/utils/Initializable.sol", - "id": 1388, + "id": 1385, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", - "scope": 1512, - "sourceUnit": 1384, + "scope": 1509, + "sourceUnit": 1381, "src": "172:63:7", "symbolAliases": [ { "foreign": { - "id": 1387, + "id": 1384, "name": "Initializable", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1383, + "referencedDeclaration": 1380, "src": "180:13:7", "typeDescriptions": {} }, @@ -1494,31 +1494,31 @@ "baseContracts": [ { "baseName": { - "id": 1390, + "id": 1387, "name": "Initializable", "nameLocations": [ "718:13:7" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 1383, + "referencedDeclaration": 1380, "src": "718:13:7" }, - "id": 1391, + "id": 1388, "nodeType": "InheritanceSpecifier", "src": "718:13:7" }, { "baseName": { - "id": 1392, + "id": 1389, "name": "ContextUpgradeable", "nameLocations": [ "733:18:7" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 1892, + "referencedDeclaration": 1889, "src": "733:18:7" }, - "id": 1393, + "id": 1390, "nodeType": "InheritanceSpecifier", "src": "733:18:7" } @@ -1527,17 +1527,17 @@ "contractDependencies": [], "contractKind": "contract", "documentation": { - "id": 1389, + "id": 1386, "nodeType": "StructuredDocumentation", "src": "237:439:7", "text": " @dev Contract module which allows children to implement an emergency stop\n mechanism that can be triggered by an authorized account.\n This module is used through inheritance. It will make available the\n modifiers `whenNotPaused` and `whenPaused`, which can be applied to\n the functions of your contract. Note that they will not be pausable by\n simply including this module, only once the modifiers are put in place." }, "fullyImplemented": true, - "id": 1511, + "id": 1508, "linearizedBaseContracts": [ - 1511, - 1892, - 1383 + 1508, + 1889, + 1380 ], "name": "PausableUpgradeable", "nameLocation": "695:19:7", @@ -1546,29 +1546,29 @@ { "anonymous": false, "documentation": { - "id": 1394, + "id": 1391, "nodeType": "StructuredDocumentation", "src": "758:73:7", "text": " @dev Emitted when the pause is triggered by `account`." }, "eventSelector": "62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258", - "id": 1398, + "id": 1395, "name": "Paused", "nameLocation": "842:6:7", "nodeType": "EventDefinition", "parameters": { - "id": 1397, + "id": 1394, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1396, + "id": 1393, "indexed": false, "mutability": "mutable", "name": "account", "nameLocation": "857:7:7", "nodeType": "VariableDeclaration", - "scope": 1398, + "scope": 1395, "src": "849:15:7", "stateVariable": false, "storageLocation": "default", @@ -1577,7 +1577,7 @@ "typeString": "address" }, "typeName": { - "id": 1395, + "id": 1392, "name": "address", "nodeType": "ElementaryTypeName", "src": "849:7:7", @@ -1597,29 +1597,29 @@ { "anonymous": false, "documentation": { - "id": 1399, + "id": 1396, "nodeType": "StructuredDocumentation", "src": "872:70:7", "text": " @dev Emitted when the pause is lifted by `account`." }, "eventSelector": "5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa", - "id": 1403, + "id": 1400, "name": "Unpaused", "nameLocation": "953:8:7", "nodeType": "EventDefinition", "parameters": { - "id": 1402, + "id": 1399, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1401, + "id": 1398, "indexed": false, "mutability": "mutable", "name": "account", "nameLocation": "970:7:7", "nodeType": "VariableDeclaration", - "scope": 1403, + "scope": 1400, "src": "962:15:7", "stateVariable": false, "storageLocation": "default", @@ -1628,7 +1628,7 @@ "typeString": "address" }, "typeName": { - "id": 1400, + "id": 1397, "name": "address", "nodeType": "ElementaryTypeName", "src": "962:7:7", @@ -1647,12 +1647,12 @@ }, { "constant": false, - "id": 1405, + "id": 1402, "mutability": "mutable", "name": "_paused", "nameLocation": "998:7:7", "nodeType": "VariableDeclaration", - "scope": 1511, + "scope": 1508, "src": "985:20:7", "stateVariable": true, "storageLocation": "default", @@ -1661,7 +1661,7 @@ "typeString": "bool" }, "typeName": { - "id": 1404, + "id": 1401, "name": "bool", "nodeType": "ElementaryTypeName", "src": "985:4:7", @@ -1674,7 +1674,7 @@ }, { "body": { - "id": 1414, + "id": 1411, "nodeType": "Block", "src": "1137:44:7", "statements": [ @@ -1683,18 +1683,18 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 1411, + "id": 1408, "name": "__Pausable_init_unchained", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1425, + "referencedDeclaration": 1422, "src": "1147:25:7", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", "typeString": "function ()" } }, - "id": 1412, + "id": 1409, "isConstant": false, "isLValue": false, "isPure": false, @@ -1710,33 +1710,33 @@ "typeString": "tuple()" } }, - "id": 1413, + "id": 1410, "nodeType": "ExpressionStatement", "src": "1147:27:7" } ] }, "documentation": { - "id": 1406, + "id": 1403, "nodeType": "StructuredDocumentation", "src": "1012:67:7", "text": " @dev Initializes the contract in unpaused state." }, - "id": 1415, + "id": 1412, "implemented": true, "kind": "function", "modifiers": [ { - "id": 1409, + "id": 1406, "kind": "modifierInvocation", "modifierName": { - "id": 1408, + "id": 1405, "name": "onlyInitializing", "nameLocations": [ "1120:16:7" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 1328, + "referencedDeclaration": 1325, "src": "1120:16:7" }, "nodeType": "ModifierInvocation", @@ -1747,18 +1747,18 @@ "nameLocation": "1093:15:7", "nodeType": "FunctionDefinition", "parameters": { - "id": 1407, + "id": 1404, "nodeType": "ParameterList", "parameters": [], "src": "1108:2:7" }, "returnParameters": { - "id": 1410, + "id": 1407, "nodeType": "ParameterList", "parameters": [], "src": "1137:0:7" }, - "scope": 1511, + "scope": 1508, "src": "1084:97:7", "stateMutability": "nonpayable", "virtual": false, @@ -1766,23 +1766,23 @@ }, { "body": { - "id": 1424, + "id": 1421, "nodeType": "Block", "src": "1250:32:7", "statements": [ { "expression": { - "id": 1422, + "id": 1419, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 1420, + "id": 1417, "name": "_paused", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1405, + "referencedDeclaration": 1402, "src": "1260:7:7", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -1793,7 +1793,7 @@ "operator": "=", "rightHandSide": { "hexValue": "66616c7365", - "id": 1421, + "id": 1418, "isConstant": false, "isLValue": false, "isPure": true, @@ -1813,27 +1813,27 @@ "typeString": "bool" } }, - "id": 1423, + "id": 1420, "nodeType": "ExpressionStatement", "src": "1260:15:7" } ] }, - "id": 1425, + "id": 1422, "implemented": true, "kind": "function", "modifiers": [ { - "id": 1418, + "id": 1415, "kind": "modifierInvocation", "modifierName": { - "id": 1417, + "id": 1414, "name": "onlyInitializing", "nameLocations": [ "1233:16:7" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 1328, + "referencedDeclaration": 1325, "src": "1233:16:7" }, "nodeType": "ModifierInvocation", @@ -1844,18 +1844,18 @@ "nameLocation": "1196:25:7", "nodeType": "FunctionDefinition", "parameters": { - "id": 1416, + "id": 1413, "nodeType": "ParameterList", "parameters": [], "src": "1221:2:7" }, "returnParameters": { - "id": 1419, + "id": 1416, "nodeType": "ParameterList", "parameters": [], "src": "1250:0:7" }, - "scope": 1511, + "scope": 1508, "src": "1187:95:7", "stateMutability": "nonpayable", "virtual": false, @@ -1863,7 +1863,7 @@ }, { "body": { - "id": 1432, + "id": 1429, "nodeType": "Block", "src": "1493:47:7", "statements": [ @@ -1872,18 +1872,18 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 1428, + "id": 1425, "name": "_requireNotPaused", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1462, + "referencedDeclaration": 1459, "src": "1503:17:7", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$__$", "typeString": "function () view" } }, - "id": 1429, + "id": 1426, "isConstant": false, "isLValue": false, "isPure": false, @@ -1899,29 +1899,29 @@ "typeString": "tuple()" } }, - "id": 1430, + "id": 1427, "nodeType": "ExpressionStatement", "src": "1503:19:7" }, { - "id": 1431, + "id": 1428, "nodeType": "PlaceholderStatement", "src": "1532:1:7" } ] }, "documentation": { - "id": 1426, + "id": 1423, "nodeType": "StructuredDocumentation", "src": "1288:175:7", "text": " @dev Modifier to make a function callable only when the contract is not paused.\n Requirements:\n - The contract must not be paused." }, - "id": 1433, + "id": 1430, "name": "whenNotPaused", "nameLocation": "1477:13:7", "nodeType": "ModifierDefinition", "parameters": { - "id": 1427, + "id": 1424, "nodeType": "ParameterList", "parameters": [], "src": "1490:2:7" @@ -1932,7 +1932,7 @@ }, { "body": { - "id": 1440, + "id": 1437, "nodeType": "Block", "src": "1740:44:7", "statements": [ @@ -1941,18 +1941,18 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 1436, + "id": 1433, "name": "_requirePaused", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1473, + "referencedDeclaration": 1470, "src": "1750:14:7", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$__$", "typeString": "function () view" } }, - "id": 1437, + "id": 1434, "isConstant": false, "isLValue": false, "isPure": false, @@ -1968,29 +1968,29 @@ "typeString": "tuple()" } }, - "id": 1438, + "id": 1435, "nodeType": "ExpressionStatement", "src": "1750:16:7" }, { - "id": 1439, + "id": 1436, "nodeType": "PlaceholderStatement", "src": "1776:1:7" } ] }, "documentation": { - "id": 1434, + "id": 1431, "nodeType": "StructuredDocumentation", "src": "1546:167:7", "text": " @dev Modifier to make a function callable only when the contract is paused.\n Requirements:\n - The contract must be paused." }, - "id": 1441, + "id": 1438, "name": "whenPaused", "nameLocation": "1727:10:7", "nodeType": "ModifierDefinition", "parameters": { - "id": 1435, + "id": 1432, "nodeType": "ParameterList", "parameters": [], "src": "1737:2:7" @@ -2001,38 +2001,38 @@ }, { "body": { - "id": 1449, + "id": 1446, "nodeType": "Block", "src": "1932:31:7", "statements": [ { "expression": { - "id": 1447, + "id": 1444, "name": "_paused", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1405, + "referencedDeclaration": 1402, "src": "1949:7:7", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 1446, - "id": 1448, + "functionReturnParameters": 1443, + "id": 1445, "nodeType": "Return", "src": "1942:14:7" } ] }, "documentation": { - "id": 1442, + "id": 1439, "nodeType": "StructuredDocumentation", "src": "1790:84:7", "text": " @dev Returns true if the contract is paused, and false otherwise." }, "functionSelector": "5c975abb", - "id": 1450, + "id": 1447, "implemented": true, "kind": "function", "modifiers": [], @@ -2040,23 +2040,23 @@ "nameLocation": "1888:6:7", "nodeType": "FunctionDefinition", "parameters": { - "id": 1443, + "id": 1440, "nodeType": "ParameterList", "parameters": [], "src": "1894:2:7" }, "returnParameters": { - "id": 1446, + "id": 1443, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1445, + "id": 1442, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 1450, + "scope": 1447, "src": "1926:4:7", "stateVariable": false, "storageLocation": "default", @@ -2065,7 +2065,7 @@ "typeString": "bool" }, "typeName": { - "id": 1444, + "id": 1441, "name": "bool", "nodeType": "ElementaryTypeName", "src": "1926:4:7", @@ -2079,7 +2079,7 @@ ], "src": "1925:6:7" }, - "scope": 1511, + "scope": 1508, "src": "1879:84:7", "stateMutability": "view", "virtual": true, @@ -2087,7 +2087,7 @@ }, { "body": { - "id": 1461, + "id": 1458, "nodeType": "Block", "src": "2082:55:7", "statements": [ @@ -2095,7 +2095,7 @@ "expression": { "arguments": [ { - "id": 1457, + "id": 1454, "isConstant": false, "isLValue": false, "isPure": false, @@ -2108,18 +2108,18 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 1455, + "id": 1452, "name": "paused", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1450, + "referencedDeclaration": 1447, "src": "2101:6:7", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_bool_$", "typeString": "function () view returns (bool)" } }, - "id": 1456, + "id": 1453, "isConstant": false, "isLValue": false, "isPure": false, @@ -2142,7 +2142,7 @@ }, { "hexValue": "5061757361626c653a20706175736564", - "id": 1458, + "id": 1455, "isConstant": false, "isLValue": false, "isPure": true, @@ -2168,7 +2168,7 @@ "typeString": "literal_string \"Pausable: paused\"" } ], - "id": 1454, + "id": 1451, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -2182,7 +2182,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 1459, + "id": 1456, "isConstant": false, "isLValue": false, "isPure": false, @@ -2198,19 +2198,19 @@ "typeString": "tuple()" } }, - "id": 1460, + "id": 1457, "nodeType": "ExpressionStatement", "src": "2092:38:7" } ] }, "documentation": { - "id": 1451, + "id": 1448, "nodeType": "StructuredDocumentation", "src": "1969:57:7", "text": " @dev Throws if the contract is paused." }, - "id": 1462, + "id": 1459, "implemented": true, "kind": "function", "modifiers": [], @@ -2218,18 +2218,18 @@ "nameLocation": "2040:17:7", "nodeType": "FunctionDefinition", "parameters": { - "id": 1452, + "id": 1449, "nodeType": "ParameterList", "parameters": [], "src": "2057:2:7" }, "returnParameters": { - "id": 1453, + "id": 1450, "nodeType": "ParameterList", "parameters": [], "src": "2082:0:7" }, - "scope": 1511, + "scope": 1508, "src": "2031:106:7", "stateMutability": "view", "virtual": true, @@ -2237,7 +2237,7 @@ }, { "body": { - "id": 1472, + "id": 1469, "nodeType": "Block", "src": "2257:58:7", "statements": [ @@ -2248,18 +2248,18 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 1467, + "id": 1464, "name": "paused", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1450, + "referencedDeclaration": 1447, "src": "2275:6:7", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_bool_$", "typeString": "function () view returns (bool)" } }, - "id": 1468, + "id": 1465, "isConstant": false, "isLValue": false, "isPure": false, @@ -2277,7 +2277,7 @@ }, { "hexValue": "5061757361626c653a206e6f7420706175736564", - "id": 1469, + "id": 1466, "isConstant": false, "isLValue": false, "isPure": true, @@ -2303,7 +2303,7 @@ "typeString": "literal_string \"Pausable: not paused\"" } ], - "id": 1466, + "id": 1463, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -2317,7 +2317,7 @@ "typeString": "function (bool,string memory) pure" } }, - "id": 1470, + "id": 1467, "isConstant": false, "isLValue": false, "isPure": false, @@ -2333,19 +2333,19 @@ "typeString": "tuple()" } }, - "id": 1471, + "id": 1468, "nodeType": "ExpressionStatement", "src": "2267:41:7" } ] }, "documentation": { - "id": 1463, + "id": 1460, "nodeType": "StructuredDocumentation", "src": "2143:61:7", "text": " @dev Throws if the contract is not paused." }, - "id": 1473, + "id": 1470, "implemented": true, "kind": "function", "modifiers": [], @@ -2353,18 +2353,18 @@ "nameLocation": "2218:14:7", "nodeType": "FunctionDefinition", "parameters": { - "id": 1464, + "id": 1461, "nodeType": "ParameterList", "parameters": [], "src": "2232:2:7" }, "returnParameters": { - "id": 1465, + "id": 1462, "nodeType": "ParameterList", "parameters": [], "src": "2257:0:7" }, - "scope": 1511, + "scope": 1508, "src": "2209:106:7", "stateMutability": "view", "virtual": true, @@ -2372,23 +2372,23 @@ }, { "body": { - "id": 1488, + "id": 1485, "nodeType": "Block", "src": "2499:66:7", "statements": [ { "expression": { - "id": 1481, + "id": 1478, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 1479, + "id": 1476, "name": "_paused", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1405, + "referencedDeclaration": 1402, "src": "2509:7:7", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -2399,7 +2399,7 @@ "operator": "=", "rightHandSide": { "hexValue": "74727565", - "id": 1480, + "id": 1477, "isConstant": false, "isLValue": false, "isPure": true, @@ -2419,7 +2419,7 @@ "typeString": "bool" } }, - "id": 1482, + "id": 1479, "nodeType": "ExpressionStatement", "src": "2509:14:7" }, @@ -2430,18 +2430,18 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 1484, + "id": 1481, "name": "_msgSender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1869, + "referencedDeclaration": 1866, "src": "2545:10:7", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", "typeString": "function () view returns (address)" } }, - "id": 1485, + "id": 1482, "isConstant": false, "isLValue": false, "isPure": false, @@ -2465,18 +2465,18 @@ "typeString": "address" } ], - "id": 1483, + "id": 1480, "name": "Paused", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1398, + "referencedDeclaration": 1395, "src": "2538:6:7", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$returns$__$", "typeString": "function (address)" } }, - "id": 1486, + "id": 1483, "isConstant": false, "isLValue": false, "isPure": false, @@ -2492,33 +2492,33 @@ "typeString": "tuple()" } }, - "id": 1487, + "id": 1484, "nodeType": "EmitStatement", "src": "2533:25:7" } ] }, "documentation": { - "id": 1474, + "id": 1471, "nodeType": "StructuredDocumentation", "src": "2321:124:7", "text": " @dev Triggers stopped state.\n Requirements:\n - The contract must not be paused." }, - "id": 1489, + "id": 1486, "implemented": true, "kind": "function", "modifiers": [ { - "id": 1477, + "id": 1474, "kind": "modifierInvocation", "modifierName": { - "id": 1476, + "id": 1473, "name": "whenNotPaused", "nameLocations": [ "2485:13:7" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 1433, + "referencedDeclaration": 1430, "src": "2485:13:7" }, "nodeType": "ModifierInvocation", @@ -2529,18 +2529,18 @@ "nameLocation": "2459:6:7", "nodeType": "FunctionDefinition", "parameters": { - "id": 1475, + "id": 1472, "nodeType": "ParameterList", "parameters": [], "src": "2465:2:7" }, "returnParameters": { - "id": 1478, + "id": 1475, "nodeType": "ParameterList", "parameters": [], "src": "2499:0:7" }, - "scope": 1511, + "scope": 1508, "src": "2450:115:7", "stateMutability": "nonpayable", "virtual": true, @@ -2548,23 +2548,23 @@ }, { "body": { - "id": 1504, + "id": 1501, "nodeType": "Block", "src": "2745:69:7", "statements": [ { "expression": { - "id": 1497, + "id": 1494, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 1495, + "id": 1492, "name": "_paused", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1405, + "referencedDeclaration": 1402, "src": "2755:7:7", "typeDescriptions": { "typeIdentifier": "t_bool", @@ -2575,7 +2575,7 @@ "operator": "=", "rightHandSide": { "hexValue": "66616c7365", - "id": 1496, + "id": 1493, "isConstant": false, "isLValue": false, "isPure": true, @@ -2595,7 +2595,7 @@ "typeString": "bool" } }, - "id": 1498, + "id": 1495, "nodeType": "ExpressionStatement", "src": "2755:15:7" }, @@ -2606,18 +2606,18 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 1500, + "id": 1497, "name": "_msgSender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1869, + "referencedDeclaration": 1866, "src": "2794:10:7", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", "typeString": "function () view returns (address)" } }, - "id": 1501, + "id": 1498, "isConstant": false, "isLValue": false, "isPure": false, @@ -2641,18 +2641,18 @@ "typeString": "address" } ], - "id": 1499, + "id": 1496, "name": "Unpaused", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1403, + "referencedDeclaration": 1400, "src": "2785:8:7", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$returns$__$", "typeString": "function (address)" } }, - "id": 1502, + "id": 1499, "isConstant": false, "isLValue": false, "isPure": false, @@ -2668,33 +2668,33 @@ "typeString": "tuple()" } }, - "id": 1503, + "id": 1500, "nodeType": "EmitStatement", "src": "2780:27:7" } ] }, "documentation": { - "id": 1490, + "id": 1487, "nodeType": "StructuredDocumentation", "src": "2571:121:7", "text": " @dev Returns to normal state.\n Requirements:\n - The contract must be paused." }, - "id": 1505, + "id": 1502, "implemented": true, "kind": "function", "modifiers": [ { - "id": 1493, + "id": 1490, "kind": "modifierInvocation", "modifierName": { - "id": 1492, + "id": 1489, "name": "whenPaused", "nameLocations": [ "2734:10:7" ], "nodeType": "IdentifierPath", - "referencedDeclaration": 1441, + "referencedDeclaration": 1438, "src": "2734:10:7" }, "nodeType": "ModifierInvocation", @@ -2705,18 +2705,18 @@ "nameLocation": "2706:8:7", "nodeType": "FunctionDefinition", "parameters": { - "id": 1491, + "id": 1488, "nodeType": "ParameterList", "parameters": [], "src": "2714:2:7" }, "returnParameters": { - "id": 1494, + "id": 1491, "nodeType": "ParameterList", "parameters": [], "src": "2745:0:7" }, - "scope": 1511, + "scope": 1508, "src": "2697:117:7", "stateMutability": "nonpayable", "virtual": true, @@ -2725,17 +2725,17 @@ { "constant": false, "documentation": { - "id": 1506, + "id": 1503, "nodeType": "StructuredDocumentation", "src": "2820:254:7", "text": " @dev This empty reserved space is put in place to allow future versions to add new\n variables without shifting down storage in the inheritance chain.\n See https://docs.openzeppelin.com/contracts/4.x/upgradeable#storage_gaps" }, - "id": 1510, + "id": 1507, "mutability": "mutable", "name": "__gap", "nameLocation": "3099:5:7", "nodeType": "VariableDeclaration", - "scope": 1511, + "scope": 1508, "src": "3079:25:7", "stateVariable": true, "storageLocation": "default", @@ -2745,7 +2745,7 @@ }, "typeName": { "baseType": { - "id": 1507, + "id": 1504, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "3079:7:7", @@ -2754,10 +2754,10 @@ "typeString": "uint256" } }, - "id": 1509, + "id": 1506, "length": { "hexValue": "3439", - "id": 1508, + "id": 1505, "isConstant": false, "isLValue": false, "isPure": true, @@ -2781,7 +2781,7 @@ "visibility": "private" } ], - "scope": 1512, + "scope": 1509, "src": "677:2430:7", "usedErrors": [] } @@ -2794,5 +2794,5 @@ }, "networks": {}, "schemaVersion": "2.0.1", - "updatedAt": "2024-06-20T09:33:52.553Z" + "updatedAt": "2024-06-27T12:24:25.261Z" } \ No newline at end of file From fa6aa1c0288f8555b3b65cfba2bfd75cd251b322 Mon Sep 17 00:00:00 2001 From: Chibuotu Amadi Date: Thu, 4 Jul 2024 16:05:58 +0100 Subject: [PATCH 5/5] chore: adjust readme contract tables --- README.md | 41 +++++++++++++++++++++++++++++------------ 1 file changed, 29 insertions(+), 12 deletions(-) diff --git a/README.md b/README.md index 3940916..4524ad2 100644 --- a/README.md +++ b/README.md @@ -98,16 +98,18 @@ npx hardhat run scripts/tron/updateProtocolFee.ts - Tron Shasta + Tron Shasta Gateway Proxy TYA8urq7nkN2yU7rJqAgwDShCusDZrrsxZ - Gateway Admin - TNcogTDoWxpuv77WtsiNTRhqjRbZmmDLTR Gateway Implementation TSGr6Ri7NZ7FxN1gCiWkn8cPA2qtF6ctdF + + Gateway Admin + TNcogTDoWxpuv77WtsiNTRhqjRbZmmDLTR + @@ -180,38 +182,53 @@ npx hardhat run scripts/tron/updateProtocolFee.ts 0x47afB97999801FD98CBD16Bb94F6efD2C779d242 - Optimism Ethereum + + + + Optimism Ethereum Gateway Proxy 0xD293fCd3dBc025603911853d893A4724CF9f70a0 - Gateway Admin - 0xb9B5280AB99E48a9662D4740B1e1398abdf87b6D Gateway Implementation 0xB04c9622a583DEbe5fef8f5E594582490604D45c - Scroll + Gateway Admin + 0xb9B5280AB99E48a9662D4740B1e1398abdf87b6D + + + + + + Scroll Gateway Proxy 0x663C5BfE7d44bA946C2dd4b2D1Cf9580319F9338 - Gateway Admin - 0x16c9C78Dbb224889E3e2ADef991C8c4438ea797B Gateway Implementation 0x5E7eC39915F6CD48829d06648F6682765846602a - Tron + Gateway Admin + 0x16c9C78Dbb224889E3e2ADef991C8c4438ea797B + + + + + + Tron Gateway Proxy THyFP5ST9YyLZn6EzjKjFhZti6aKPgEXNU - Gateway Admin - TLw6AW9khfwLVq5gq9uV71wTVZEPxKjoiZ Gateway Implementation TDhBvHbnF8nN7YctokpdZAVPcmBx2Jrn2d + + Gateway Admin + TLw6AW9khfwLVq5gq9uV71wTVZEPxKjoiZ +